Ejemplo n.º 1
0
        /// <summary>
        /// Factory method for getting the default render state set.
        /// </summary>
        /// <returns>
        /// It returns a GraphicsStateSet representing the default state set.
        /// </returns>
        public static GraphicsStateSet GetDefaultSet()
        {
            GraphicsStateSet renderStateSet = new GraphicsStateSet();

            // Instantiate all context-bound states
            renderStateSet.DefineState(TransformState.DefaultState);
            renderStateSet.DefineState(DepthTestState.DefaultState);
            renderStateSet.DefineState(BlendState.DefaultState);
            renderStateSet.DefineState(CullFaceState.DefaultState);

            // renderStateSet.DefineState(UniformColorState.DefaultState);
            //renderStateSet.DefineState(PolygonModeState.DefaultState);
            //renderStateSet.DefineState(CullFaceState.DefaultState);
            //renderStateSet.DefineState(RenderBufferState.DefaultState);
            //renderStateSet.DefineState(ViewportState.DefaultState);

            return(renderStateSet);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Clone this GraphicsStateSet.
        /// </summary>
        /// <returns>
        /// It returns a deep copy of this GraphicsStateSet.
        /// </returns>
        public GraphicsStateSet Push()
        {
            GraphicsStateSet clone = new GraphicsStateSet();

            foreach (IGraphicsState state in _RenderStates)
            {
                if (state != null)
                {
                    clone.DefineState(state.Push());
                }
            }

            return(clone);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Factory method for getting the current render state set.
        /// </summary>
        /// <param name="ctx">
        /// A <see cref="GraphicsContext"/> defining the state vector.
        /// </param>
        /// <returns>
        /// It returns a GraphicsStateSet representing the currently active state vector.
        /// </returns>
        public static GraphicsStateSet GetCurrentStateSet(GraphicsContext ctx)
        {
            if (ctx == null)
            {
                throw new ArgumentNullException("ctx");
            }
            if (ctx.IsCurrent == false)
            {
                throw new ArgumentException("not current", "ctx");
            }

            GraphicsStateSet renderStateSet = new GraphicsStateSet();

            // Instantiate all context-bound states
            renderStateSet.DefineState(new PolygonModeState(ctx));
            renderStateSet.DefineState(new BlendState(ctx));
            renderStateSet.DefineState(new DepthTestState(ctx));
            renderStateSet.DefineState(new CullFaceState(ctx));
            //renderStateSet.DefineState(new RenderBufferState(ctx));
            //renderStateSet.DefineState(new ViewportState(ctx));
            renderStateSet.DefineState(new TransformState(ctx));

            return(renderStateSet);
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Factory method for getting the default render state set.
        /// </summary>
        /// <returns>
        /// It returns a GraphicsStateSet representing the default state set.
        /// </returns>
        public static GraphicsStateSet GetDefaultSet()
        {
            GraphicsStateSet renderStateSet = new GraphicsStateSet();

            // Instantiate all context-bound states
            renderStateSet.DefineState(PixelAlignmentState.DefaultState);
            renderStateSet.DefineState(TransformState.DefaultState);
            renderStateSet.DefineState(DepthTestState.DefaultState);
            renderStateSet.DefineState(BlendState.DefaultState);
            renderStateSet.DefineState(CullFaceState.DefaultState);
            renderStateSet.DefineState(PolygonOffsetState.DefaultState);

            return(renderStateSet);
        }