Ejemplo n.º 1
0
        public override void Render()
        {
            float[] model = new float[16];
            float[] proj  = new float[16];
            culledTotal = 0;
            GL.GetFloat(GetPName.ProjectionMatrix, proj);
            GL.GetFloat(GetPName.ModelviewMatrix, model);
            culler.CalculateFrustum(model, proj);

            foreach (FileSlice slice in slices)
            {
                slice.Render(culler);
                culledTotal += slice.cullCount;
            }
        }
Ejemplo n.º 2
0
        public override void Render()
        {
            float[] modelView = new float[16];
            float[] proj      = new float[16];
            culledTotal = 0;
            //GL.GetFloat(GetPName.ProjectionMatrix, proj);
            //GL.GetFloat(GetPName.ModelviewMatrix, model);
            Matrix4 modelViewMatrix = parentWindow.GetCamera().CameraModelMatrix *ShadersCommonProperties.viewMatrix;

            Util.MatrixToFloatArray(modelViewMatrix, ref modelView);
            Util.MatrixToFloatArray(ShadersCommonProperties.projectionMatrix, ref proj);

            culler.CalculateFrustum(modelView, proj); //TODO: correct culler

            foreach (FileSlice slice in slices)
            {
                slice.Render(culler);
                culledTotal += slice.cullCount;
            }
        }