public void Render() { if (lineVertices == 0) { return; } rstate.Cull = false; rstate.DepthEnabled = false; var vp = camera.ViewProjection; shader.SetViewProjection(ref vp); shader.UseProgram(); linebuffer.SetData(lines, lineVertices); linebuffer.Draw(PrimitiveTypes.LineList, lineVertices / 2); rstate.Cull = true; rstate.DepthEnabled = true; }
void DrawCommands(RenderContext rs, int start, int count) { shaderBasic.UseProgram(); rs.Cull = false; rs.BlendMode = rendat[datindex].BlendMode; if (_frameStart) { var v = camera.View; var vp = camera.ViewProjection; shaderBasic.SetView(ref v); shaderBasic.SetViewProjection(ref vp); _frameStart = false; } rendat[datindex].Texture.BindTo(0); vboBasic.Draw(PrimitiveTypes.TriangleList, 0, start, count / 3); rs.Cull = true; lastDatHash = -1; }