OpenTK.GLControl 3.1.0

.NET Framework 2.0
There is a newer version of this package available.
See the version list below for details.
NuGet\Install-Package OpenTK.GLControl -Version 3.1.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
dotnet add package OpenTK.GLControl --version 3.1.0
<PackageReference Include="OpenTK.GLControl" Version="3.1.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add OpenTK.GLControl --version 3.1.0
#r "nuget: OpenTK.GLControl, 3.1.0"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install OpenTK.GLControl as a Cake Addin
#addin nuget:?package=OpenTK.GLControl&version=3.1.0

// Install OpenTK.GLControl as a Cake Tool
#tool nuget:?package=OpenTK.GLControl&version=3.1.0

The Open Toolkit is set of fast, low-level C# bindings for OpenGL, OpenGL ES and OpenAL. It runs on all major platforms and powers hundreds of apps, games and scientific research.
OpenTK provides several utility libraries, including a math/linear algebra package, a windowing system, and input handling.

Product Versions
.NET Framework net20 net35 net40 net403 net45 net451 net452 net46 net461 net462 net463 net47 net471 net472 net48
Compatible target framework(s)
Additional computed target framework(s)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (28)

Showing the top 5 NuGet packages that depend on OpenTK.GLControl:

Package Downloads
Xamarin.Forms.Platform.WPF The ID prefix of this package has been reserved for one of the owners of this package by

Xamarin Forms Renderer to build native UIs for WPF

SkiaSharp.Views.WindowsForms The ID prefix of this package has been reserved for one of the owners of this package by

SkiaSharp Views & Layers are a set of platform-specific views and containers that can be used to draw on the screen.


Emgu CV is a cross platform .Net wrapper to the OpenCV image processing library. Allowing OpenCV functions to be called from .NET compatible languages such as C#, VB, VC++, IronPython etc. The wrapper can be compiled in Mono and run on Windows, Linux, Mac OS X, iPhone, iPad and Android devices.

SkiaSharp.Views.Forms.WPF The ID prefix of this package has been reserved for one of the owners of this package by

SkiaSharp for Xamarin.Forms is a set of views that can be used to draw on the screen.


A WPF UserControl that hosts a OpenTK control. Multiple WpfOpenGlControls can share a single rendering context to allow sharing of textures, shaders...An example WPF application is available at (

GitHub repositories (29)

Showing the top 5 popular GitHub repositories that depend on OpenTK.GLControl:

Repository Stars
.NET MAUI is the .NET Multi-platform App UI, a framework for building native device applications spanning mobile, tablet, and desktop.
AssetStudio is a tool for exploring, extracting and exporting assets and assetbundles.
Xamarin.Forms Official Home
SkiaSharp is a cross-platform 2D graphics API for .NET platforms based on Google's Skia Graphics Library. It provides a comprehensive 2D API that can be used across mobile, server and desktop models to render images.
Mission Planner Ground Control Station (c# .net)
Version Downloads Last updated
3.3.3 1,063 9/10/2022
3.1.0 404,996 8/4/2019
3.0.1 1,098,283 7/6/2018
3.0.0 21,255 5/1/2018
3.0.0-pre 11,095 5/8/2017
1.1.2349.61993 176,273 6/7/2016
1.1.2225 166,332 2/4/2016
1.1.1589.5942 23,964 7/29/2014
1.1.1589.5941 2,013 5/9/2014
1.1.1579.5793 1,200 4/29/2014
1.1.1508.5725 1,116 5/9/2014
1.1.1508.5724 2,488 2/17/2014
1.1.1456.5398 1,794 12/27/2013
1.1.1161.61462 2,077 8/28/2013

* Fixed problem where OpenGL 3.2 contexts where created using the wrong flags, causing renderdoc error (#790).
* Fixed problem where Vector3.Transform(Quaternion) returned incorrect results ( #776 ).
* SDL backend no longer handles exceptions thrown in input events ( #735 #737 )
* Updated gamepadd mappings for SDL (#927).
* Alt + numpad now results in correct data being passed to OnKeyPress (f17fa4b).
* Keypress events are using CharSet.Unicode to allow for UTF characters.
* If GetMouseMovePointsEx returns "access denied" we fall back to the old mouse move handling ( #883 ).
* Detect joysticks which declare no valid controls &amp; ignore (Cherry-picked from #819 ).
* Fix where an invalid joystick axis overwrites the first joystick axis. (Cherry-picked from #819 ).
* Makes the ArbCreateContext return valid settings ( #754 ).
* Unprocessed events no longer put the application into a partially-activated state ( #732 ).
* Multiple fixes under PR #914:
* NativeWindow.CursorVisible no longer resets the mouse position ( #668 ).
* Custom cursors should work now ( e598ab2 ).
* Command key is now a valid modifier ( 286119e ).
* Fix where KeyDown events would trigger KeyPress when they shouldn't, e.g. when pasting ( ea3dd48 ).
* KeyPress now receives the correct keycodes even if modifiers where held when typing ( 91b03dd ).
* Generator.Build now uses invariant culture for parsing avoiding an exception when the local system uses comma as decimal separator ( #750 ).
* Removed weird assembly version check fixing #710.
* Fixed Xamarin project so that it compiles ( See #725 and b16e7fa ).
* Matrix4 uses unsafe to invert for performace ( #719 ).
* Removed link to gitter chat, discord is where it's at ( #770 ).