/// <summary> /// /// </summary> /// <param name="arg"></param> protected override void DoRender(RenderEventArgs arg) { // Push attributes, disable lighting. OpenGL.PushAttrib(OpenGL.GL_CURRENT_BIT | OpenGL.GL_ENABLE_BIT | OpenGL.GL_LINE_BIT | OpenGL.GL_POLYGON_BIT); OpenGL.Disable(OpenGL.GL_LIGHTING); OpenGL.Disable(OpenGL.GL_TEXTURE_2D); OpenGL.LineWidth(1.0f); OpenGL.Color4f(BoxColor.x, BoxColor.y, BoxColor.z, BoxColor.w); //QuadsDraw(gl); //GL.Color(1.0f, 0, 0); OpenGL.Begin(DrawMode.LineLoop); OpenGL.Vertex3f(MinPosition.x, MinPosition.y, MinPosition.z); OpenGL.Vertex3f(MaxPosition.x, MinPosition.y, MinPosition.z); OpenGL.Vertex3f(MaxPosition.x, MinPosition.y, MaxPosition.z); OpenGL.Vertex3f(MinPosition.x, MinPosition.y, MaxPosition.z); OpenGL.End(); //GL.Color(0, 1.0f, 0); OpenGL.Begin(DrawMode.LineLoop); OpenGL.Vertex3f(MinPosition.x, MaxPosition.y, MinPosition.z); OpenGL.Vertex3f(MaxPosition.x, MaxPosition.y, MinPosition.z); OpenGL.Vertex3f(MaxPosition.x, MaxPosition.y, MaxPosition.z); OpenGL.Vertex3f(MinPosition.x, MaxPosition.y, MaxPosition.z); OpenGL.End(); //GL.Color(0, 0, 1.0f); OpenGL.Begin(DrawMode.Lines); OpenGL.Vertex3f(MinPosition.x, MinPosition.y, MinPosition.z); OpenGL.Vertex3f(MinPosition.x, MaxPosition.y, MinPosition.z); OpenGL.Vertex3f(MaxPosition.x, MinPosition.y, MinPosition.z); OpenGL.Vertex3f(MaxPosition.x, MaxPosition.y, MinPosition.z); OpenGL.Vertex3f(MaxPosition.x, MinPosition.y, MaxPosition.z); OpenGL.Vertex3f(MaxPosition.x, MaxPosition.y, MaxPosition.z); OpenGL.Vertex3f(MinPosition.x, MinPosition.y, MaxPosition.z); OpenGL.Vertex3f(MinPosition.x, MaxPosition.y, MaxPosition.z); OpenGL.End(); OpenGL.PopAttrib(); }
/// <summary> /// Render to the provided instance of GL. /// </summary> /// <param name="renderMode">The render mode.</param> public virtual void Render(RenderModes renderMode) { // Push attributes, disable lighting. OpenGL.PushAttrib(OpenGL.GL_CURRENT_BIT | OpenGL.GL_ENABLE_BIT | OpenGL.GL_LINE_BIT | OpenGL.GL_POLYGON_BIT); OpenGL.Disable(OpenGL.GL_LIGHTING); OpenGL.Disable(OpenGL.GL_TEXTURE_2D); OpenGL.LineWidth(1.0f); OpenGL.Color(BoxColor.x, BoxColor.y, BoxColor.z, BoxColor.w); //QuadsDraw(gl); //GL.Color(1.0f, 0, 0); OpenGL.Begin(DrawMode.LineLoop); OpenGL.Vertex(MinPosition.x, MinPosition.y, MinPosition.z); OpenGL.Vertex(MaxPosition.x, MinPosition.y, MinPosition.z); OpenGL.Vertex(MaxPosition.x, MinPosition.y, MaxPosition.z); OpenGL.Vertex(MinPosition.x, MinPosition.y, MaxPosition.z); OpenGL.End(); //GL.Color(0, 1.0f, 0); OpenGL.Begin(DrawMode.LineLoop); OpenGL.Vertex(MinPosition.x, MaxPosition.y, MinPosition.z); OpenGL.Vertex(MaxPosition.x, MaxPosition.y, MinPosition.z); OpenGL.Vertex(MaxPosition.x, MaxPosition.y, MaxPosition.z); OpenGL.Vertex(MinPosition.x, MaxPosition.y, MaxPosition.z); OpenGL.End(); //GL.Color(0, 0, 1.0f); OpenGL.Begin(DrawMode.Lines); OpenGL.Vertex(MinPosition.x, MinPosition.y, MinPosition.z); OpenGL.Vertex(MinPosition.x, MaxPosition.y, MinPosition.z); OpenGL.Vertex(MaxPosition.x, MinPosition.y, MinPosition.z); OpenGL.Vertex(MaxPosition.x, MaxPosition.y, MinPosition.z); OpenGL.Vertex(MaxPosition.x, MinPosition.y, MaxPosition.z); OpenGL.Vertex(MaxPosition.x, MaxPosition.y, MaxPosition.z); OpenGL.Vertex(MinPosition.x, MinPosition.y, MaxPosition.z); OpenGL.Vertex(MinPosition.x, MaxPosition.y, MaxPosition.z); OpenGL.End(); OpenGL.PopAttrib(); }