OpenGL in C#

My First OpenGL in C# Program

I converted the first example in Computer Graphics Using Open GL to C#, using the examples from the download as a template.

Here is the result:

using System;
using System.Drawing;
using System.Windows.Forms;
using CsGL.OpenGL;
public class DotsDemo : Form
MyView view = new MyView();
public DotsDemo()
    Text = "Dots demo !";
    view.Dock = DockStyle.Fill;
    Controls.Add( view );
public static void Main()
    DotsDemo di = new DotsDemo();
    Application.Run( di );
class MyView : OpenGLControl
public override void glDraw()
    GL.glClear( GL.GL_COLOR_BUFFER_BIT | GL.GL_DEPTH_BUFFER_BIT ); // Clear Screen And Depth Buffer
    GL.glBegin( GL.GL_POINTS );
    GL.glVertex2i( 100, 50 );
    GL.glVertex2i( 100, 130 );
    GL.glVertex2i( 150, 130 );
protected override void InitGLContext()
    GL.glClearColor( 1.0f, 1.0f, 1.0f, 0.0f );
    GL.glColor3f( 0.0f, 0.0f, 0.0f );
    GL.glPointSize( 4.0f );
protected override void OnSizeChanged(EventArgs e)
    GL.gluOrtho2D( 0.0, Size.Width, 0.0, Size.Height );

Be sure to add references to the OpenGL dlls: csgl-base, csgl-extensions, & csgl-opengl.

The program draws 3 dots in the lower left corner of the window.

You might also like...



Why not write for us? Or you could submit an event or a user group in your area. Alternatively just tell us what you think!

Our tools

We've got automatic conversion tools to convert C# to VB.NET, VB.NET to C#. Also you can compress javascript and compress css and generate sql connection strings.

“Theory is when you know something, but it doesn't work. Practice is when something works, but you don't know why. Programmers combine theory and practice: Nothing works and they don't know why.”