public void Render(float time, Glorg2.Graphics.GraphicsDevice dev) { dev.SetActiveMaterial(mat); dev.SetVertexBuffer(model.VertexBuffer); foreach (var part in model.Parts) { if (part.Material != null) dev.SetActiveMaterial(part.Material); dev.SetIndexBuffer(part.IndexBuffer); dev.Draw(Glorg2.Graphics.DrawMode.Triangles); } dev.SetVertexBuffer(null); dev.SetIndexBuffer(null); dev.SetActiveMaterial(null); }
protected virtual void Render(Glorg2.Graphics.GraphicsDevice dev, float frame_time, float total_time) { if(scene.Background.w > 0) dev.Clear(Glorg2.Graphics.ClearFlags.Color | Glorg2.Graphics.ClearFlags.Depth, scene.Background); if (scene.Camera != null) dev.ProjectionMatrix = scene.Camera.GetProjectionMatrix(); lock (scene.renderables) { foreach (var n in scene.renderables) (n as Scene.Node).InternalRender(frame_time, dev); } dev.Present(); }