Changelog History
Page 1
-
v4.7.4 Changes
- ๐ FIX: Updated
OpenTK.redist.glfw
nuget reference to the latest version (3.3.7.27
), the previous3.3.7.25
had issues on linux.
- ๐ FIX: Updated
-
v4.7.3 Changes
API: Added overloads for
Vector2i
,Vector3i
, andVector4i
toGL.Uniform
andGL.ProgramUniform
family of functions. (@NogginBops)API: Added overloads for non-symmetric matrices to
GL.Uniform
family of functions to theOpenTK.Graphics.OpenGL4
namespace. (@NogginBops)๐ API: Added
IsButtonPressed
andIsButtonReleased
toJoystickState
, to matchKeyboardState
andMouseState
. (@g7ChoGXh)API: Added
GL_KHR_shader_subgroup
to the bindings. (@BoyBaykiller)๐ FIX: Fixed race condition in
RethrowCallbackExceptionsIfNeeded
where some uncaught exceptions in callbacks could be lost. (@NogginBops, @seanofw)๐ FIX: Fixed issue where
NativeWindow.OnClosing
andNativeWindow.Closing
wheren't called when callingNativeWindow.Close()
. (@NogginBops)๐ FIX: Made
CL.EnqueueReadBuffer<T>()
use the correctsizeof(T)
instead ofsizeof(float)
. This caused issues where the wrong number of bytes where sent, possibly leading to an access violation. (@NogginBops, @Ed-Silver)
-
v4.7.2 Changes
๐ฅ BREAKING: Fixed issue where the
QuaternionD(double, double, double)
ctor produced the wrong quaternion. It now produces the same quaternion asQuaterion(float, float, float)
. (@NogginBops)๐ฅ BREAKING: Fixed
QuaterionD.ToEulerAngles
to now produce the correct result. It now matches the result fromQuaterion.ToEulerAngles
. (@NogginBops)๐ API: Deprecated
NativeWindow.CursorVisible
andNativeWindow.CursorGrabbed
in favor of a unifiedNativeWindow.CursorState
that disallows invalid combinations. (@NogginBops)๐ API: Added
NativeWindowSettings.SrgbCapable
to be able to create a default framebuffer with sRGB capabilities. (@NogginBops)API: Added glfw native access funtions added in glfw 3.1. (@NogginBops)
๐ API: Added
MinimumSize
andMaximumSize
properties toNativeWindow
andNativeWindowSettings
. (@toasty1307)API: Added
NativeWindow.ProcessWindowEvents
static function for processing events manually. Prefer this function (withNativeWindow.ProcessInputEvents
) in a multi-window setup. (@NogginBops)โก๏ธ API: Exposed
NativeWindow.ProcessInputEvents()
so multi-window setups can update input state of all windows before handling events (usingNativeWindow.ProcessWindowEvents
). (@NogginBops)API: Added a proper "main thread" check for glfw. To turn this off,
GLFWProvider.CheckForMainThread
can be set to false. (@NogginBops)API: Added all missing enums to
SizedInternalFormat
. (@NogginBops)API: Added
TextureCubeMapArray
toTextureTarget3d
. (@NogginBops)API: Added
ParameterBuffer
toBufferTarget
. (@NogginBops)API: Added overloads to
MultiDrawElementsIndirectCount
that takes the properDrawElementsType
enum as an argument. (@NogginBops)API: Added overloads to
VertexAttribIFormat
andVertexAttribLFormat
that takeVertexAttribIntegerType
andVertexAttributeDoubleType
respectively. (@BoyBaykiller)API: Added bindings for
NV_mesh_shader
,NV_shading_rate
,NV_primitive_shading_rate
,NV_representative_fragment_test
andNV_scissor_exclusive
extensions. (@BoyBaykiller)API: Enums should now be documented with their minimum version or extension requirements. These are not guaranteed to be 100% accurate but should mostly correct. (@NogginBops)
API: Added
RawMouseMotionAttribute
enum, to be able to control raw mouse motion from GLFW.๐ Fix issue where limiting framerate would cause issues with input functions like
JoystickState.WasButtonPressed
whould have an incorrect value (@NogginBops).โก๏ธ Updated GLFW to 3.3.7. This should fix an issue where UTF-16 code points where sent to OnTextInput causing it to crash. (@NogginBops, @g7ChoGXh)
โก๏ธ If the update loop gets too far behind it no longer tries to make up for lost time. This was typically caused by resizing the window, and or closing the lid of a laptop. (@daerogami)
๐ฆ OpenTK no longer put an upper limit on the
System.Runtime.CompilerServices.Unsafe
package. (@NogginBops)๐ Fixed so
NativeWindowSettings.DepthBits
andNativeWindowSettings.StencilBits
actually affect the resulting backbuffer format. (@NogginBops)๐ Fixed an issue in
Box3i.Contains(Vector3i)
where one of the comparisons where wrong, causing incorrect results. (@BlakkM9)๐ Fixed an issue where
Vector3i.ComponentMin
returned one of the input arguments instead of the proper result. (@Oribow)๐ Fixed OpenAL
Buffer(int, BufferLoopPoint, ReadOnlySpan<int>)
overload to no longer crash. (@NogginBops)
-
v4.7.1 Changes
๐ฅ BREAKING: Simplifications to the
Monitors
api, hopefully it's easier to work with now. Old functions are marked[Obsolete]
with directions for equivalent operations with the new API. (@NogginBops)๐ฅ BREAKING: Changed
Span<T>
toReadOnlySpan<T>
in OpenAL bindings where appropriate. (@NogginBops)๐ API: Add more information to
MonitorInfo
such as human-readable names and supported video modes. (@NogginBops, @utkumaden)API: Added component-wise division operators for vector types (@NogginBops, @wildniklin)
API: Added missing
One
andZero
static readonly fields toVector3i
(@NogginBops, @wildniklin)API: Implemented
AL_SOFT_loop_points
OpenAL extension. (@NogginBops)๐ Passing
ContextAPI.NoAPI
inNativeWindowSettings.ContextAPI
will not create an OpenGL context. This allows you to useNativeWindow
to create a vulkan context, see #1334. (@arakis, @NogginBops)โ Added warning to documentation that
ClientSize
will not be guaranteed to have updated values in theOnMaximized
andOnMinimized
callbacks. (@NogginBops, @wo80)โก๏ธ Updated to GLFW 3.3.5. (@NogginBops)
๐ FIX: Fix invalid IL generation for some edge case GL ES functions, AOT compiling OpenTK now works correctly!! (@NogginBops, thanks @jkotas for helping me understand the issue)
๐ FIX: Fix
Box3
documentation referencing 2D concepts. (@CaiB)๐ FIX: Fixed
MathHelper.MapRange
so that it no longer always throws division by zero exceptions. (@jdmisek)๐ FIX: Fixed
OnUnload
so that it's acutally called in all cases when closing the window. (@NogginBops, @adfcf)๐ FIX: Wrap all callbacks in exception handlers that will then rethrow these exceptions at the end of
NativeWindow.ProcessEvents()
so that exceptions don't unwind into native calls which is a problem on non-windows platforms. (@NogginBops, @PJB3005)๐ FIX: Fix
NativeWindow.IsExiting
andNativeWindow.Exists
so that they actually contain correct values. (@NogginBops)๐ FIX: Fix
Box2d.Translate
andBox2i.Translate
, this fix also fixes setting theBox2d.Center
andBox2i.Center
properties. (@NogginBops, @yts233)๐ FIX: Made JoystickCallback still work when multiple windows are used. (@TheBlubb14)
๐ FIX: The MonitorCallback no longer gets garbage collected and crashes the program when called. (@NogginBops)
๐ Deprecated the
Closed
event and thenOnClosed
virtual method, they where never called and now we explicitly say so. (@NogginBops)๐ Deprecated
NativeWindowSettings.IsFullscreen
, useNativeWindowSettings.WindowState
instead. (@NogginBops)โก๏ธ Deprecated
NativeWindowSettings.IsMultiThreaded
, Render/Update split isn't a great idea then multithreading and users can easily spin up an "update" thread themselves. (@NogginBops)
-
v4.7.0 Changes
๐ This released was built using a broken build script. ๐ 4.7.1 is released with a fixed build script and the change log for 4.7.1 is identical to this version except the fix to the build script.
-
v4.6.7 Changes
- ๐ FIX: Fixed closing window causing AccessViolations on windows and other crashes on other platforms. (@NogginBops)
-
v4.6.6 Changes
- ๐ FIX: Fixed arithmetic overflow issue in
Box2i.Center
andBox3i.Center
introduced when making them return correct values.
- ๐ FIX: Fixed arithmetic overflow issue in
-
v4.6.5 Changes
๐ API: Added settings in
NativeWindowSettings
for controlling backbuffer parameters such asDepthBits
andStencilBits
. (@deccer)๐ API: Added
SwapInterval
toIGraphicsContext
and movedVSync
property fromGameWindow
toNativeWindow
to allow for more control over vsync. (@softwareantics)โก๏ธ Updated GLFW to 3.3.4. (@NogginBops)
๐ FIX: Fixed
Box2i.Center
andBox3i.Center
returning wrong values. (@NogginBops, thanks @g7ChoGXh for the bug report)๐ FIX: Implemented proper disposing of
NativeWindow
. (@NogginBops, thanks @xiejiang2014 for the bug report)๐ FIX: Fixed calling conventions on glfw callbacks in 32-bit builds. (@NogginBops)
-
v4.6.4 Changes
- ๐ FIX: Made it so that the singular check in
Matrix4.Invert
is the same between platforms. ๐ In particular this fixes an issue where the singular check was too aggressive in the SSE3 path. (@NogginBops) - ๐ FIX: Made checking for OpenAL extensions not crash if the extension wasn't present. (@NogginBops)
๐ FIX: Fix to the rewriter to not generate invalid IL on some GLES functions. (@NogginBops)
โก๏ธ Updated CONTRIBUTING.md to not contain broken links. (@asears)
- ๐ FIX: Made it so that the singular check in
-
v4.6.3 Changes
- ๐ FIX: Fixed an issue where
Matrix4.Invert
threw an exception if the matrix determinant was negative. (@NogginBops, thanks for reporting @ghidosoft)
- ๐ FIX: Fixed an issue where