public override void PresentDepth(VCam c) { SetMats(c); Bind(); PreRender(); RenderDepth(); PostRender(); Release(); foreach (var s in Sub) { s.PresentDepth(c); } }
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); } }
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; }
public virtual void Add(VCam c) { Cams.Add(c); }
public virtual void Present(VCam c) { }
public virtual void PresentDepth(VCam c) { }