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.

“The most exciting phrase to hear in science, the one that heralds new discoveries, is not 'Eureka!' but 'That's funny...'” - Isaac Asimov