예제 #1
0
 public override void PresentDepth(VCam c)
 {
     SetMats(c);
     Bind();
     PreRender();
     RenderDepth();
     PostRender();
     Release();
     foreach (var s in Sub)
     {
         s.PresentDepth(c);
     }
 }
예제 #2
0
 public override void Present(VCam c)
 {
     //  GL.MatrixMode(MatrixMode.Projection);
     // GL.LoadMatrix(ref c.ProjMat);
     SetMats(c);
     Bind();
     PreRender();
     Render();
     PostRender();
     Release();
     foreach (var s in Sub)
     {
         s.Present(c);
     }
 }
예제 #3
0
        private void SetMats(VCam c)
        {
            Effect.FXG.Proj = c.ProjMat;
            Effect.FXG.Cam  = c;
            // GL.MatrixMode(MatrixMode.Modelview);
            Matrix4 mm = Matrix4.Identity;

            // mm = c.CamWorld;
            //mm = mm * Matrix4.Invert(Matrix4.CreateTranslation(c.WorldPos));


            mm = World * mm;
            var wp = WorldPos;

            mm = Matrix4.CreateTranslation(wp) * mm;
            //GL.LoadMatrix(ref mm);
            Effect.FXG.Local = mm;
        }
예제 #4
0
 public virtual void Add(VCam c)
 {
     Cams.Add(c);
 }
예제 #5
0
 public virtual void Present(VCam c)
 {
 }
예제 #6
0
 public virtual void PresentDepth(VCam c)
 {
 }