OpenTK
The Open Toolkit is set of fast, portable, low-level C# bindings for OpenGL, OpenGL ES, OpenAL, and OpenCL. It runs on all major platforms and powers hundreds of apps, games, and scientific research programs.
OpenTK provides several utility libraries, including a math/linear algebra package, a windowing system, and input handling.
OpenTK is not a game engine, nor does it try to be one: It offers a useful set of tools and lets you decide how to use them. It is the ideal starting point if you want to write a game or scientific application from the ground up.
Current Status
- OpenTK 4.x is the current, stable version. It targets .NET Core 3.x and .NET 5+.
- OpenTK 4.x
- OpenTK 4.x GLWpfControl (WPF control)
- OpenTK 4.x GLControl (WinForms control)
- OpenTK 3.x is the legacy version. It targets .NET Framework 4.x.
- OpenTK 5.x is the next version of OpenTK. It brings a new OpenGL bindings generator, Vulkan bindings and a new alternative windowing API written completely in C# (called PAL2). We welcome any contributions!
- OpenTK 5.x (preview package)
- OpenTK 5.x api documentation (preview)
- OpenTK 5.x PAL2 tutorials (preview)
Help and Support
If you have a question or want to know how to get started, check our extensive FAQ, or try our tutorials for OpenTK 4 and OpenTK 3.
The OpenTK source code is available on GitHub, and the latest build can be found on Nuget. If you find a bug or defect, please let us know with a GitHub issue.
Project status (2024-07-10)
OpenTK 3 (.NET framework) has had it's probably last release and will likely not be updated anymore.
OpenTK 4 (.NET core 3.1+) is considered the "current" version of OpenTK. We try and fix any issues reported. If you have any problems, report them here: https://github.com/opentk/opentk/issues/new
OpenTK 5 (.NET 5+) is currently under active development. Not considered stable yet. OpenTK 5 brings a new OpenGL bindings generator, a Vulkan bindings generator and a new alternative windowing system written completely in C#. Follow the progress here: https://github.com/opentk/opentk/issues/1207
NuGet
If you encounter any issues, please let us know with a GitHub issue.
We have an active, friendly Discord server; if you need help, feel free to join and ask a question in the #support
channel!
License
The Open Toolkit is distributed under the permissive MIT/X11 license and is absolutely free.