Beispiel #1
0
        //public override void prepareFrameBegin() { }
        //public override void preparePerFrame(Renderable r) { }
        //public override void preparePerViewBegin(View v) { }
        //public override void preparePerView(Renderable r, View v) { }
        //public override void preparePerViewFinalize(View v) { }
        //public override void preparePerPassBegin(Pass p) { }
        //public override void preparePerPass(Renderable r, Pass p) { }

        public override void preparePerPassFinalize(Pass p)
        {
            base.preparePerPassFinalize(p);

            foreach (BaseRenderQueue rq in p.renderQueues.Values)
            {
                if (rq.myPipeline.vaoState.vao == null)
                {
                    rq.myPipeline.vaoState.vao = new VertexArrayObject();
                    rq.myPipeline.vaoState.vao.bindVertexFormat(rq.myPipeline.shaderState.shaderProgram, TerrainVertex.bindings());
                }
            }
        }