示例#1
0
        public Program(PixelShader a_pixelShader, GeometryShader a_geometryShader, VertexShader a_vertexShader, ModelVertexInfo[] a_vertLayout, int a_vertexSize, bool a_depthTest, e_CullingMode a_cullingMode, Pipeline a_pipeline)
        {
            m_pipeline = a_pipeline;

            m_pixelShader    = a_pixelShader;
            m_geometryShader = a_geometryShader;
            m_vertexShader   = a_vertexShader;

            m_depthTest   = a_depthTest;
            m_cullingMode = a_cullingMode;

            if (a_pipeline.ApplicationType == e_ApplicationType.Managed)
            {
                m_internalObject = new OpenTKProgram(this);
            }
            else
            {
                m_internalObject = new NativeProgram(this, a_vertLayout, a_vertexSize, a_pipeline);
            }

            m_pipeline.AddObject(this);
        }
示例#2
0
 public Program(PixelShader a_pixelShader, VertexShader a_vertexShader, ModelVertexInfo[] a_vertLayout, int a_vertexSize, bool a_depthTest, e_CullingMode a_cullingMode, Pipeline a_pipeline)
     : this(a_pixelShader, null, a_vertexShader, a_vertLayout, a_vertexSize, a_depthTest, a_cullingMode, a_pipeline)
 {
 }