public void Draw(float max) { Matrix4 transform = CanvasManager.ViewportTransform; GL.Enable(EnableCap.ScissorTest); transform = Matrix4.Scale(1, 2 / max, 1) * Matrix4.CreateTranslation(0, -1, 0) * CanvasManager.ViewportTransform; GL.UniformMatrix4(_shaderProgram.UniformTransform, false, ref transform); GL.Uniform4(_shaderProgram.UniformColor, Color4.Gray); //GL.LineWidth(1f); GL.Disable(EnableCap.ScissorTest); //transform = Matrix4.CreateTranslation(0, pos.Y, 0) * Matrix4.Scale(1, scale.Y, 1) * CanvasManager.ViewportTransform; //GL.UniformMatrix4(_uniformTransform, false, ref transform); GL.LineWidth(2f); GL.Scissor(CanvasManager.TickSize, CanvasManager.BorderSize + CanvasManager.TickSize - 1, CanvasManager.ControlWidth - CanvasManager.TickSize, CanvasManager.ControlHeight - 2 * (CanvasManager.BorderSize + CanvasManager.TickSize) + 2); GL.Enable(EnableCap.ScissorTest); YTicks.BeginDraw(); YTicks.Draw(BeginMode.Lines); YTicks.EndDraw(); GL.Disable(EnableCap.ScissorTest); }