OpenTK.Mathematics 5.0.0-pre.16
OpenTK.Mathematics
Mathematical structures and algorithms, provided and used by OpenTK.
Read more about how to use OpenTK at: https://opentk.net/
Showing the top 20 packages that depend on OpenTK.Mathematics.
| Packages | Downloads |
|---|---|
|
OpenTK.Windowing.Desktop
An abstraction over OpenTK.GraphicsLibraryFramework to provide a ready-to-go easy-to-use windowing and input abstraction.
|
15 |
|
OpenTK.Windowing.Common
Common functionality for OpenTK.Windowing.* packages.
|
15 |
|
OpenTK.Graphics
GLes11, GLes20, GLes30, GL2, and GL4 bindings for dotnet from the Khronos openGL c library.
|
15 |
|
OpenTK.Windowing.Desktop
An abstraction over OpenTK.GraphicsLibraryFramework to provide a ready-to-go easy-to-use windowing and input abstraction.
|
14 |
|
OpenTK.Windowing.Common
Common functionality for OpenTK.Windowing.* packages.
|
14 |
|
OpenTK.Graphics
OpenGl and OpenGLES bindings for dotnet from the Khronos OpenGL C library.
|
14 |
|
OpenTK.Graphics
GLes11, GLes20, GLes30, GL2, and GL4 bindings for dotnet from the Khronos openGL c library.
|
14 |
|
OpenTK.Graphics
OpenGl and OpenGlEs bindings for dotnet from the Khronos openGL c library.
|
14 |
Update to .NET 10. (@NogginBops)
Migrate to `slnx` solution. (@NogginBops)
Remove paket from the build system and use `dotnet pack` instead. (@NogginBops)
Update descriptions and READMEs of packages to be consistent. (@NogginBops)
Removed `OpenTK.Input` package and namespace. (@NogginBops)
Enable source link for OpenTK packages. (@NogginBops)
Unified the OpenAL and OpenGL bindings generator code and simplified it significantly. (@NogginBops)
Make `VectorN.ComponentMin` and `VectorN.ComponentMax` properly NaN propagating. (@NogginBops)
Add `VectorN.ComponentMinNumber`, `VectorN.ComponentMinNative`, `VectorN.ComponentMaxNumber`, and `VectorN.ComponentMaxNative`. (@NogginBops)
Reworked `Box2/i/d` and `Box3/i/d` structs significantly. (@NogginBops)
Made `Min` and `Max` raw fields.
Changed `BoxN.Contains` to actually test if the box is completely contained. For the old behavior use `BoxN.IntersectsWith` or `BoxN.Touches`.
Add `BoxN.Empty` to represent empty boxes for use in bounding box calculations.
Add `BoxN.Zero` to represent point at (0, 0).
Add `BoxN.IsEmpty`, `BoxN.IsPoint`, and `BoxN.HasZeroArea`, `Box2.Area`, and `Box3.Volume` properties.
Removed `BoxN.Top`, `BoxN.Right`, `BoxN.Bottom`, `BoxN.Left`, `BoxN.X`, `BoxN.Y`, `BoxN.SizeX`, `BoxN.SizeY`, `BoxN.CenteredSize`, `BoxN.IsZero` properties.
Removed setters for `BoxN.Width`, `BoxN.Height`, `BoxN.Size`, `BoxN.Location` properties.
Added `BoxN.DistanceToNearestPointInBox`, `BoxN.DistanceToNearestEdge`, `BoxN.SignedDistanceToNearestEdge`, `BoxN.NearestPointInBox`, and `BoxN.NearestPointOnEdge`.
Added `BoxNi.EuclidianDistanceToNearestPointInBox`, `BoxNi.EuclidianDistanceToNearestEdge`, `BoxNi.ManhattanDistanceToNearestEdge`, `BoxNi.SignedEuclidianDistanceToNearestEdge`, and `BoxNi.SignedManhattanDistanceToNearestEdge`.
Changed `BoxN.Round`, `BoxN.Floor`, and `BoxN.Ceiling` to return `BoxN` instead of `BoxNi`.
Added `BoxN.FloorCeiling` that floors min point and ceilings the max point.
OpenAL bindings changes**:
Add documentation to ALC and AL enums. (@NogginBops)
Add OpenAL specification and extension specificiation links to OpenAL function documentation. (@NogginBops)
Fix typo `AL.DopperFactor` -> `AL.DopplerFactor`. (@NogginBops)
Capitalization of "1D", "2D", and "3D" is now correct. (@NogginBops)
Add version info to enum members. (@NogginBops)
Add back `ALC.GetContextAttributes` and `ALC.GetStringList` (@NogginBops)
Change `AL.SourceQueueBuffers` and `AL.SourceUnqueueBuffers` to take `int` instead of `uint`. (@NogginBops)
Fixed capitalization of many acronyms in the OpenAL bindings. (@NogginBops)
Document original enum name in inline enum documentation. (@NogginBops)
Vulkan bindings changes**:
Updates vulkan bindings to 1.4.352. (@NogginBops)
Capitalization of "1D", "2D", and "3D" is now correct. (@NogginBops)
Fix underlying type for dispatchable handles on 32-bit platforms. (@NogginBops)
Added inline documentation annotations for optional and extern sync parameters. (@NogginBops)
Fix 64-bit enums with values larger than `int.MaxValue` having the wrong values. (@NogginBops)
Properly XML escape documentation comments for struct members. (@NogginBops)
OpenGL bindings changes**:
Capitalization of "1D", "2D", and "3D" is now correct. (@NogginBops)
Fix inline documentation now working correctly being included in the nuget package. (@NogginBops)
Fix extension documentation links sometimes being broken. (@NogginBops)
Remove GLES2 functions from OpenGL namespace that had snuck in and vice versa. (@NogginBops)
Make `GL.ObjectLabel` and `GL.ObjectPtrLabel` take an `int` parameter instead of `uint` for the OpenGL object. (@NogginBops)
Make `GL.ObjectPtrLabel` correctly take a `GLSync` parameter. (@NogginBops)
Add `GL.GetShaderInfoLog` and `GL.GetProgramInfoLog` overloads returning a `string`. (@NogginBops)
Capitalization of "1D" is now correct. (@NogginBops)
Add `ClipOrigin` and `ClipDepthMode` to the `GetPName` enum. (@NogginBops)
Removed extension functions marked for compatibility profile from `OpenTK.Graphics.OpenGL`. (@NogginBops)
Updated to latest OpenGL 4 documentation. Notably `GL.DrawElements` now correctly documents `indices` as being an offset and not a pointer to the index data itself. (@NogginBops)
Add version info to enum members. (@NogginBops)
Document original enum name in inline enum documentation. (@NogginBops)
PAL2 changes**:
Added `Toolkit.Window.GetOpenGLContext` to get OpenGL context from a window handle if one has been created. (@NogginBops)
Added `Toolkit.OpenGL.GetWindow` to get the window that was used to create a OpenGL context. (@NogginBops)
Rework `Toolkit.Joystick` to handle arbitrary number of buttons and axes. (@NogginBops)
`Toolkit.Joystick` is only implemented in the Win32 and SDL backends so far.
Add `Toolkit.Gamepad` for xbox style gamepad support. (@NogginBops)
`Toolkit.Gamepad` only works *partially* in the Win32 backend so far.
Changed `Toolkit.Keyboard.GetActiveKeyboardLayout` to `Toolkit.Keyboard.GetActiveInputLanguage`. (@NogginBops)
Changed `Toolkit.Keyboard.GetAvailableKeyboardLayouts` to `Toolkit.Keyboard.GetInstalledInputLanguages`. (@NogginBops)
Add `DisplayValuesChangedEvent` which is sent when various properties of displays change. (@NogginBops)
Add `ClientPosition` property to `MouseButtonDownEventArgs` and `MouseButtonUpEventArgs`. (@NogginBops)
Add `Clicks` property to `MouseButtonDownEventArgs` and `MouseButtonUpEventArgs` for detecting double-clicks. (@NogginBops)
Replaced `EventQueue` with `Toolkit.Event` and remove some unused apis from `EventQueue`. (@NogginBops)
win32:
Fix issue where non-integer refresh rates would cause `ExclusiveFullscreen` to fail. (@NogginBops)
Partial fix to high polling rate mice having large impact on framerate. (@JoeTwizzle, @NogginBops)
Added `ToolkitOptions.Windows.MaxWindowMessagesPerFrame` to limit the number of events processed in a frame, can help with high polling rate mice performance. (@JoeTwizzle, @NogginBops)
Fix bug where changing the window border mode would give the window focus. (@NogginBops)
macOS:
Fix issue with missing entry point `objc_msgSend_stret` on apple silicon. (@NogginBops)
x11:
Read `Xft.dpi` setting for `Toolkit.Display.GetDisplayScale` and `Toolkit.Window.GetContentScale`. (@NogginBops)
Made `Toolkit.Shell.AllowScreenSaver(false, ...)` a little more likely to work. (@NogginBops)
Use freedesktop UPower dbus service, if available, for more reliable battery information. (@NogginBops)
Use gsettings, if available, to get more accurate keyboard layout information. (@NogginBops)
.NET 10.0
- No dependencies.
| Version | Downloads | Last updated |
|---|---|---|
| 5.0.0-pre.16 | 1 | 05/19/2026 |
| 5.0.0-pre.15 | 0 | 08/24/2025 |
| 5.0.0-pre.14 | 0 | 07/11/2025 |
| 5.0.0-pre.13 | 13 | 03/21/2025 |
| 5.0.0-pre.12 | 14 | 03/21/2025 |
| 5.0.0-pre.11 | 13 | 03/21/2025 |
| 5.0.0-pre.10 | 13 | 03/21/2025 |
| 5.0.0-pre.9 | 13 | 03/21/2025 |
| 5.0.0-pre.8 | 12 | 03/21/2025 |
| 5.0.0-pre.7 | 14 | 03/21/2025 |
| 5.0.0-pre.6 | 14 | 03/21/2025 |
| 5.0.0-pre.5 | 13 | 03/21/2025 |
| 5.0.0-pre.4 | 13 | 03/21/2025 |
| 5.0.0-pre.3 | 13 | 03/21/2025 |
| 5.0.0-pre.2 | 13 | 03/21/2025 |
| 5.0.0-pre.1 | 13 | 03/21/2025 |
| 4.9.4 | 0 | 03/17/2025 |
| 4.9.3 | 0 | 12/10/2024 |
| 4.9.2 | 0 | 12/10/2024 |
| 4.9.1 | 0 | 12/02/2024 |
| 4.8.2 | 12 | 03/21/2025 |
| 4.8.1 | 13 | 03/21/2025 |
| 4.8.0 | 13 | 03/21/2025 |
| 4.7.7 | 13 | 03/21/2025 |
| 4.7.6 | 13 | 03/21/2025 |
| 4.7.5 | 13 | 03/21/2025 |
| 4.7.4 | 13 | 03/21/2025 |
| 4.7.3 | 13 | 03/21/2025 |
| 4.7.2 | 13 | 03/21/2025 |
| 4.7.1 | 13 | 03/21/2025 |
| 4.7.0 | 12 | 03/21/2025 |
| 4.6.7 | 13 | 03/21/2025 |
| 4.6.6 | 13 | 03/21/2025 |
| 4.6.5 | 13 | 03/21/2025 |
| 4.6.4 | 13 | 03/21/2025 |
| 4.6.3 | 13 | 03/21/2025 |
| 4.6.2 | 13 | 03/21/2025 |
| 4.6.1 | 12 | 03/21/2025 |
| 4.6.0 | 13 | 03/21/2025 |
| 4.5.0 | 13 | 03/21/2025 |
| 4.4.0 | 13 | 03/21/2025 |
| 4.3.0 | 12 | 03/21/2025 |
| 4.2.0 | 13 | 03/21/2025 |
| 4.1.0 | 13 | 03/21/2025 |
| 4.0.6 | 14 | 03/21/2025 |
| 4.0.5 | 13 | 03/21/2025 |
| 4.0.4 | 13 | 03/21/2025 |
| 4.0.3 | 13 | 03/21/2025 |
| 4.0.2 | 13 | 03/21/2025 |
| 4.0.1 | 13 | 03/21/2025 |
| 4.0.0 | 14 | 03/21/2025 |
| 4.0.0-pre9.10 | 12 | 03/21/2025 |
| 4.0.0-pre9.9 | 14 | 03/21/2025 |
| 4.0.0-pre9.8 | 13 | 03/21/2025 |
| 4.0.0-pre9.7 | 13 | 03/21/2025 |
| 4.0.0-pre9.6 | 13 | 03/21/2025 |
| 4.0.0-pre9.5 | 14 | 03/21/2025 |
| 4.0.0-pre9.4 | 13 | 03/21/2025 |