Skip to content
/ QuickGL Public

OpenGL and GLFW bindings for C# .NET 8

License

Notifications You must be signed in to change notification settings

vlOd2/QuickGL

Repository files navigation

ℹ QuickGL

Straightforward OpenGL and GLFW bindings for C# targeting .NET 8
The main goal is to keep the experience as similar to C/C++ as possible
This meant exporting the bindings with pointers, so unsafe code is required

🤔 Why is it called QuickGL?

Because with QuickGL, you can be writing OpenGL code in minutes

More information is available on the wiki, but you can get a GLFW window and OpenGL context with just 5 lines of code:

QuickGL.Init();
glfwInit();
nint window = glfwCreateWindow(640, 480, new QGLString("Game"), 0, 0);
glfwMakeContextCurrent(window);
QuickGL.LoadGL();

🔧 Utilities

QuickGL includes some utilities to help you out with repetitive tasks:

  • QGLString, to ease the interop between native strings (byte*) and managed strings
  • QuickGL::ToPtr, to help you use the fast stack memory (stackalloc) with GLFW/GL functions
  • Input, a wrapper around GLFW for keyboard and mouse input

Note

All of these are optional and you can just use QuickGL for the bindings just fine without them

⚙ Bindings

The bindings are automatically generated based on the official GLFW header and OpenGL registry
You may generate your own custom bindings using QGLBindingsGen

⚖ License

This project is licensed under the MIT license
You may refer to the "LICENSE" file for more information

About

OpenGL and GLFW bindings for C# .NET 8

Resources

License

Stars

Watchers

Forks

Languages