OpenTK.Mathematics 5.0.0-pre.14

Prefix Reserved
This is a prerelease version of OpenTK.Mathematics.
dotnet add package OpenTK.Mathematics --version 5.0.0-pre.14
                    
NuGet\Install-Package OpenTK.Mathematics -Version 5.0.0-pre.14
                    
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.
<PackageReference Include="OpenTK.Mathematics" Version="5.0.0-pre.14" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="OpenTK.Mathematics" Version="5.0.0-pre.14" />
                    
Directory.Packages.props
<PackageReference Include="OpenTK.Mathematics" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add OpenTK.Mathematics --version 5.0.0-pre.14
                    
#r "nuget: OpenTK.Mathematics, 5.0.0-pre.14"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package OpenTK.Mathematics@5.0.0-pre.14
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=OpenTK.Mathematics&version=5.0.0-pre.14&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=OpenTK.Mathematics&version=5.0.0-pre.14&prerelease
                    
Install as a Cake Tool

OpenTK.Mathematics

A basic mathematics library developed primarily for rendering in 3d and 2d.

Read more about how to use OpenTK at: https://opentk.net/

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (12)

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

Package Downloads
OpenTK

The Open Toolkit is set of fast, 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. It provides bindings for GLFW windowing, input and a game loop, and is the perfect start for your own game engine. OpenTK comes with simple and easy to follow tutorials for learning *modern* OpenGL. These are written by the community and represent all of the best practices to get you started. Learn how to use OpenTK here: https://opentk.net/learn/index.html Sample projects that accompany the tutorial can be found here: https://github.com/opentk/LearnOpenTK We have a very active discord server, if you need help, want to help, or are just curious, come join us! https://discord.gg/6HqD48s

OpenTK.OpenAL

OpenAL bindings for dotnet from the Khronos openAL c library.

OpenTK.Graphics

OpenGl and OpenGLES bindings for dotnet from the Khronos OpenGL C library.

OpenTK.Windowing.Common

Common functionality for OpenTK.Windowing.* packages.

OpenTK.Windowing.Desktop

An abstraction over OpenTK.GraphicsLibraryFramework to provide a ready-to-go easy-to-use windowing and input abstraction.

GitHub repositories (4)

Showing the top 4 popular GitHub repositories that depend on OpenTK.Mathematics:

Repository Stars
Norbyte/lslib
Tools for manipulating Divinity Original Sin and Baldur's Gate 3 files
BAndysc/WoWDatabaseEditor
Integrated development environment (IDE), an editor for Smart Scripts (SAI/smart_scripts) for TrinityCore based servers. Cmangos support work in progress. Featuring a 3D view built with OpenGL and custom ECS framework
BoyBaykiller/IDKEngine
OpenGL Toy-"Engine" with Wavefront Path Tracer and Rasterizer with Voxel Cone Tracing/Global Illumination
ArchiDog1998/RotationSolver
Analyses combat information every frame and finds the best action.
Version Downloads Last Updated
5.0.0-pre.14 212 7/11/2025
5.0.0-pre.13 14,214 11/11/2024
5.0.0-pre.12 2,496 9/25/2024
5.0.0-pre.11 1,973 8/9/2024
5.0.0-pre.10 6,853 3/7/2024
5.0.0-pre.9 4,167 10/16/2023
5.0.0-pre.8 29,942 10/28/2022
5.0.0-pre.7 9,799 4/19/2022
5.0.0-pre.6 4,982 6/16/2021
5.0.0-pre.5 641 5/29/2021
5.0.0-pre.4 565 5/22/2021
5.0.0-pre.3 8,651 3/10/2021
5.0.0-pre.2 443 3/9/2021
5.0.0-pre.1 971 3/8/2021
4.9.4 41,361 3/17/2025
4.9.3 46,408 12/10/2024
4.9.2 4,039 12/10/2024
4.9.1 5,718 12/2/2024
4.8.2 376,341 12/2/2023
4.8.1 40,164 9/27/2023
4.8.0 48,943 7/17/2023
4.7.7 1,671,398 2/23/2023
4.7.6 8,580 2/22/2023
4.7.5 652,385 9/8/2022
4.7.4 72,936 6/17/2022
4.7.3 7,653 6/17/2022
4.7.2 2,008,609 5/3/2022
4.7.1 36,088 2/17/2022
4.7.0 7,631 2/16/2022
4.6.7 88,282 9/13/2021
4.6.6 6,897 9/13/2021
4.6.5 6,756 9/13/2021
4.6.4 78,288 5/28/2021
4.6.3 22,022 3/27/2021
4.6.2 9,029 3/19/2021
4.6.1 8,642 3/19/2021
4.6.0 10,002 3/18/2021
4.5.0 118,224 2/14/2021
4.4.0 31,317 12/16/2020
4.3.0 165,928 11/21/2020
4.2.0 8,331 11/12/2020
4.1.0 9,844 11/6/2020
4.0.6 13,165 10/18/2020
4.0.5 7,463 10/18/2020
4.0.4 7,714 10/17/2020
4.0.3 7,743 10/14/2020
4.0.2 9,698 10/11/2020
4.0.1 10,073 10/6/2020
4.0.0 17,308 10/2/2020
4.0.0-pre9.10 600 10/1/2020
4.0.0-pre9.9 521 9/30/2020
4.0.0-pre9.8 478 9/29/2020
4.0.0-pre9.7 925 9/20/2020
4.0.0-pre9.6 673 9/14/2020
4.0.0-pre9.5 471 9/14/2020
4.0.0-pre9.4 1,436 8/30/2020

Added generic math interfaces to all vector and matrix types. (@vovatrykoz)
Add boolean vectors `VectorNb` and comparison operators for vectors. (@NogginBops)
Add `scalar + vecor`, `scalar - vector`, and `scalar / vector` operator overloads for vectors. (@BoyBaykiller)
Add `JoystickState.GUID`. (@DamensIsPoggers)
Merged latest OpenTK 4.9.4 changes onto 5.0-pre.14. (@NogginBops)
Mark many properties and functions as `readonly` in math library. (@BoyBaykiller)
Made GLFW loading compatible with `IlcDisableReflection. (@BoyBaykiller)
Vulkan bindings changes**:
Update vulkan bindings to 1.4.321. (@NogginBops)
Add `InstanceDispatchTable` and `DeviceDispatchTable` dispatch tables for more efficiently calling vulkan functions. (@NogginBops)
Fix aliased structs so that they actually contain the correct memebers. (@NogginBops)
Functions, handles, structs and enums now have correct version and deprecation info documented. (@NogginBops)
Annotated structs and enums with functions that use them. (@NogginBops)
Fix XML escape codes in documentation comments. (@NogginBops)
OpenGL bindings changes**:
Add `string[]` overloads to functions where applicable. (@NogginBops)
Remove `VertexBufferObjectUsage` in favor of `BufferUsageHint`. (@NogginBops)
PAL2 changes**:
Add `Toolkit.Window.PostUserEvent` multi-threaded API on all plaforms for posting events to the main thread (useful with `waitForEvents = true`). (@NogginBops)
Add `ToolkitOptions.FeatureFlags` for specifying if pal2 should load OpenGL and/or Vulkan components. (@NogginBops)
win32:
Fix raw mouse motion. (@JoeTwizzle)
Add platform specific api for setting window taskbar progress, `ShellComponent.SetProgressStatus`. (@NogginBops)
Fix transitioning from `WindowState.Hidden` to `WindowState.*Fullscreen` directly. (@NogginBops)
macOS:
Support for IME text input though `Toolkit.Keyboard.BeginIme`, `Toolkit.Keyboard.SetImeRectangle`, and `Toolkit.Keyboard.EndIme`. (@NogginBops)
Add platform specific api for setting window taskbar progress, `ShellComponent.SetProgressStatus`. (@NogginBops)
Support `waitForEvents = true` in `Toolkit.Window.ProcessEvents`. (@NogginBops)
Animated cursors are not automatically handled, `MacOSCursorComponent.UpdateAnimation` is removed. (@NogginBops)
Moved `MacOSWindowComponent.SetDockIcon` to `MacOSShellComponent.SetDockIcon`. (@NogginBops)
x11:
Fix `DllNotFoundException` for `Xrender`. (@NogginBops)
Make it possible to hide the cursor. (@NogginBops)
Support for IME text input though `Toolkit.Keyboard.BeginIme`, `Toolkit.Keyboard.SetImeRectangle`, and `Toolkit.Keyboard.EndIme`. (@NogginBops)
Fix window shadow for opaque windows with transparent Visuals on Ubuntu. (@NogginBops)
Fix `Toolkit.Window.SetCursorCaptureMode` when running on XWayland. (@NogginBops)
Fix `Toolkit.Dialog` with newer versions of Zenity. (@NogginBops)