1987 lines
95 KiB
Text
1987 lines
95 KiB
Text
------------------------------
|
|
OpenTK 1.0 beta-3 -> 1.0 rc1
|
|
------------------------------
|
|
|
|
2010-03-24 the_fiddler
|
|
|
|
* Build.exe, Source/Build/Resources/DoxyFile.txt: Modified doxygen
|
|
script to ignore .svn directories.
|
|
|
|
* Source/Build/Build.cs: Improved documentation and added lib
|
|
target (builds project files directly).
|
|
|
|
* Documentation/Manual.pdf: Added manual to source control. This
|
|
file is a pdf copy of http://www.opentk.com/book/export/html/111,
|
|
converted to pdf format manually (it is not part of the regular
|
|
build process).
|
|
|
|
* Build.exe, Source/Build/Build.cs: Print total build time.
|
|
|
|
* Source/OpenTK/Platform/X11/X11GLNative.cs: Set initial values for
|
|
window bounds and client rectangle to ensure the various
|
|
properties return correct values inside the constructor and Load
|
|
event. Fixes issue [#1649]: "WindowBorder.Fixed causes 1x1 sized
|
|
window on Linux".
|
|
|
|
* ., Documentation: Update svn:ignore to ignore documentation
|
|
source and Visual Studio solution upgrade files.
|
|
|
|
* Source/Bind/Specifications/GL2/enumext.spec,
|
|
Source/OpenTK/Graphics/OpenGL/GLEnums.cs: Added
|
|
EXT_texture_compression_s3tc tokens to PixelInternalFormat.
|
|
Previously, only the srgb s3tc tokens were available there, now
|
|
we have both srgb and rgb tokens.
|
|
|
|
* Source/Compatibility, Source/Examples, Source/GLControl,
|
|
Source/OpenTK: Added pidb files to svn:ignore.
|
|
|
|
* Build.exe: Updated Build.exe to the latest version that includes
|
|
nsis and all targets.
|
|
|
|
* Installers/Nsis/opentk.nsi: Enabled all languages and add source
|
|
code and documentation to the generated installer.
|
|
|
|
* Source/Build/Build.cs, Source/Build/BuildNsis.cs,
|
|
Source/Build/BuildProject.cs,
|
|
Source/Build/Resources/OpenTK.Prebuild.xml: * Added "nsis" build
|
|
target. * Added "all" build target, that creates solutions,
|
|
builds them, creates documentation and runs the nsis target
|
|
automatically. * Added support for building the generated
|
|
solutions through Build.exe (using Microsoft BuildEngine). This
|
|
is necessary for the "all" target. * Patch Prebuild output to fix
|
|
csproj paths in the generated solutions.
|
|
|
|
* Source/OpenTK/GameWindow.cs: Disabled hack for modal event loop
|
|
when click-dragging on windows. Threaded rendering is now
|
|
supported and provides a superior solution.
|
|
|
|
* Source/OpenTK/Platform/X11/API.cs: Threaded X should be
|
|
initialized both in debug and release modes.
|
|
|
|
* Source/Build/Properties/Resources.Designer.cs,
|
|
Source/Build/Properties/Resources.resx,
|
|
Source/Compatibility/Properties/Resources.Designer.cs,
|
|
Source/Compatibility/Properties/Resources.resx,
|
|
Source/Examples/Properties/Resources.Designer.cs,
|
|
Source/Examples/Properties/Resources.resx: Use forward slashes in
|
|
resource paths in order to maintain compatibility with xbuild
|
|
2.6. See http://www.opentk.com/node/1551
|
|
|
|
2010-03-23 the_fiddler
|
|
|
|
* Build.exe, Installers, Installers/Nsis,
|
|
Installers/Nsis/opentk.nsi, Source/Build/Build.cs,
|
|
Source/Build/BuildNsis.cs,
|
|
Source/Build/Properties/AssemblyInfo.cs,
|
|
Source/Compatibility/Properties/AssemblyInfo.cs,
|
|
Source/Examples/Properties/AssemblyInfo.cs,
|
|
Source/GLControl/Properties/AssemblyInfo.cs,
|
|
Source/OpenTK/Properties/AssemblyInfo.cs: * Added Nsis installer
|
|
script. * Added support for Nsis installer generation in
|
|
OpenTK.Build. * Updated project titles. * Bumped version numbers
|
|
for 1.0-rc1 release.
|
|
|
|
* Source/OpenTK/Platform/Windows/WinGLContext.cs: Print
|
|
success/failure of wglShareLists. In case of failure, print error
|
|
code to simplify debugging.
|
|
|
|
2010-03-12 the_fiddler
|
|
|
|
* Source/OpenTK/Graphics/GraphicsContext.cs,
|
|
Source/OpenTK/Graphics/IGraphicsContext.cs,
|
|
Source/OpenTK/Platform/Dummy/DummyGLContext.cs,
|
|
Source/OpenTK/Platform/MacOS/AglContext.cs,
|
|
Source/OpenTK/Platform/Windows/WinGLContext.cs,
|
|
Source/OpenTK/Platform/X11/X11GLContext.cs: Make LoadAll() method
|
|
available to IGraphicsContext. Avoids the need for ugly casts of
|
|
GraphicsContext to IGraphicsContextInternal when loading entry
|
|
points (for example when trying to use an external, dummy
|
|
context).
|
|
|
|
* Source/OpenTK/Platform/X11/API.cs: XCloseDisplay causes crash in
|
|
libGL. Removed as a temporary workaround while investigating the
|
|
issue.
|
|
|
|
* Source/OpenTK/Platform/X11/X11DisplayDevice.cs,
|
|
Source/OpenTK/Platform/X11/X11Factory.cs,
|
|
Source/OpenTK/Platform/X11/X11XrandrDisplayDevice.cs: * Do not
|
|
blow up when XRandR extension is not available. Fixes issue
|
|
[#1331]: "XRandR does not work with Nvidia dynamic TwinView
|
|
enabled". * Renamed X11XrandrDisplayDevice to X11DisplayDevice as
|
|
it should provide more code-paths than only XRandR.
|
|
|
|
2010-03-11 the_fiddler
|
|
|
|
* Source/OpenTK/Platform/X11/X11GLNative.cs: * Added support for
|
|
reading the actual window borders (WM decoration) through
|
|
_NET_FRAME_EXTENTS. Updated Bounds property to use the actual
|
|
border size. * Refactored parts of the event loop into separate
|
|
functions for improved code clarity. * Updates the window
|
|
location or size now immediately process pending events. Fixes
|
|
issue [#1605]: "LINUX X, Y, Width, Height not being updated."
|
|
|
|
* Source/OpenTK/Platform/X11/Functions.cs: XMoveWindow was
|
|
incorrectly p/invoking XResizeWindow instead of XMoveWindow.
|
|
Fixes issue [#1599]: GameWindow.X or Y don't work correctly on
|
|
Linux.
|
|
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs: In the current
|
|
implementation, ClientRectangle origin always starts at (0,0).
|
|
Location is used for Bounds (the outer rectangle) and was not
|
|
used correctly here.
|
|
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs: * Raise only a
|
|
single Resize event when changing WindowBorder or WindowState.
|
|
Fixes issue [#1461]: "OnResize called multiple times when
|
|
changing WindowState." * Refactored WindowBorder and WindowState
|
|
parts into new private methods for increased clarity. *
|
|
|
|
* Source/Examples/OpenTK/GameWindow/ThreadedRendering.cs: Serialize
|
|
viewport updates between main and rendering thread to avoid race
|
|
conditions.
|
|
|
|
* Source/OpenTK/Platform/Windows/API.cs: Hide internal members from
|
|
doxygen documentation. Fixes issue [#1617]: "Hide internal /
|
|
private members for the function reference".
|
|
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs: Use Guid for class
|
|
name instead of trying to create our own unique name. Fixes issue
|
|
[#1622]: "WinGLNative's window class registration strategy does
|
|
not take AppDomains into account" (thanks kring789!)
|
|
|
|
|
|
---------------------------------
|
|
OpenTK 1.0 beta-2 -> 1.0 beta-3
|
|
---------------------------------
|
|
|
|
2010-03-09 the_fiddler
|
|
|
|
* Source/Compatibility/Properties/AssemblyInfo.cs,
|
|
Source/Examples/Properties/AssemblyInfo.cs,
|
|
Source/GLControl/Properties/AssemblyInfo.cs,
|
|
Source/OpenTK/Properties/AssemblyInfo.cs: Updated version numbers
|
|
for 1.0-beta3 release.
|
|
|
|
2010-03-05 the_fiddler
|
|
|
|
* Build.exe: Added error messages for missing doxygen or latex
|
|
installations.
|
|
|
|
* Source/Build/Build.cs: Added error messages for missing doxygen
|
|
or latex installations.
|
|
|
|
* Source/OpenTK/Platform/X11/Functions.cs: Removed unused code.
|
|
|
|
* Source/OpenTK/Platform/X11/API.cs,
|
|
Source/OpenTK/Platform/X11/X11GLContext.cs,
|
|
Source/OpenTK/Platform/X11/X11GLNative.cs,
|
|
Source/OpenTK/Platform/X11/X11GraphicsMode.cs: Ensure that all X
|
|
function calls are protected by XLockDisplay/XUnlockDisplay.
|
|
Fixed nasty deadlock bug due to (incorrectly) nested XLockDisplay
|
|
calls. Removed XLockDisplay from methods that do not use a
|
|
display connection.
|
|
|
|
* Source/OpenTK/GameWindow.cs: Do not access VSync property without
|
|
checking for a current context (avoids
|
|
GraphicsContextMissingException when the user moves the context
|
|
to its own rendering thread.)
|
|
|
|
* Source/Examples/OpenGL/1.5/VertexBufferObject.cs,
|
|
Source/Examples/OpenTK/GameWindow/ThreadedRendering.cs,
|
|
Source/Examples/Shapes/VertexPositionColor.cs: Added example for
|
|
threaded rendering (where OpenGL rendering is performed on its
|
|
own thread.) Moved VertexPositionColor struct to its own file, to
|
|
simplify sharing between samples.
|
|
|
|
* Source/Examples/Main.cs: Added missing license information.
|
|
|
|
* Source/OpenTK/Platform/X11/Bindings/Glx.cs: * Glx.cs: Do not use
|
|
ContextHandle directly as a p/invoke parameter (not portable).
|
|
|
|
* Source/OpenTK/Platform/Dummy/DummyGLContext.cs,
|
|
Source/OpenTK/Platform/MacOS/CarbonWindowInfo.cs,
|
|
Source/OpenTK/Platform/Windows/API.cs,
|
|
Source/OpenTK/Platform/Windows/WinGLContext.cs,
|
|
Source/OpenTK/Platform/Windows/WinGLNative.cs,
|
|
Source/OpenTK/Platform/Windows/WinRawMouse.cs,
|
|
Source/OpenTK/Platform/Windows/WinWindowInfo.cs: Marked internal
|
|
documentation as such, to avoid littering doxygen output.
|
|
|
|
* Source/Examples/OpenTK/Test/GameWindowStates.cs: * Minor code
|
|
cleanup and reorganization. * Added support for changing the
|
|
window size via + and - keys. * Moved key handling to the KeyDown
|
|
event. The user can now press and hold a key to observe how the
|
|
GameWindow reacts.
|
|
|
|
* Source/OpenTK/Platform/X11/X11GLNative.cs: * Protect all xlib
|
|
calls by XLockDisplay/XUnlockDisplay. * Remove
|
|
SubstructureNotifyMask, as we are not creating any child windows.
|
|
* Return ClientSize instead of Bounds.Size and Location instead
|
|
of Bounds.Location for the Size and Location properties
|
|
respectively. This aligns the implementation of these properties
|
|
on win32 and x11.
|
|
|
|
2010-03-02 the_fiddler
|
|
|
|
* Source/Compatibility/Properties/AssemblyInfo.cs,
|
|
Source/Examples/Properties/AssemblyInfo.cs,
|
|
Source/GLControl/Properties/AssemblyInfo.cs,
|
|
Source/OpenTK/Properties/AssemblyInfo.cs: Bumped version numbers
|
|
for release.
|
|
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs: X and Y properties
|
|
now correctly get and set the window location on screen.
|
|
|
|
* Source/Examples/OpenTK/Test/GameWindowStates.cs: Allow arrow keys
|
|
to move the window around the screen.
|
|
|
|
* Source/OpenTK/Graphics/OpenGL/GLHelper.cs: Added overloads for
|
|
Vector[234]d and Matrix4d for a large number of helper functions.
|
|
Fixes issue [#1596]: "Vector3d and Vector2d support in Functions
|
|
like GL.Vertex3(), GL.Color3(), GL.TexCoord2() etc.".
|
|
|
|
* Source/OpenTK/GameWindow.cs: Replaced tabs with spaces.
|
|
|
|
GameWindow no longer raises a Resize event before Load. This was
|
|
a hack that was introduced to work around some design limitations
|
|
in the early days of the library. These limitations no longer
|
|
hold (INativeWindow size is now set independently of the Resize
|
|
event), so the hack is no longer necessary. The To avoid breaking
|
|
existing applications, a Resize event is still raised
|
|
unconditionally after Load is complete.
|
|
|
|
* Source/Examples/OpenTK/Test/GameWindowStates.cs: Display
|
|
information on mouse location and window position/size.
|
|
|
|
* Source/OpenTK/NativeWindow.cs: Use retainEvents parameter
|
|
according to the documentation (parameter was left unused
|
|
before).
|
|
|
|
* Source/OpenTK/Platform/Windows/API.cs,
|
|
Source/OpenTK/Platform/Windows/WinGLNative.cs: Ensure window is
|
|
brought to the top of the z-order when it becomes visible for the
|
|
first time (typically when GameWindow.Run() is called.) Ensure
|
|
window bounds are correctly restored after leaving fullscreen
|
|
mode, by restoring window border before setting the bounds.
|
|
|
|
2010-02-06 the_fiddler
|
|
|
|
* Source/Build/Build.cs: * Build.cs: Corrected filename casing for
|
|
default doxygen target (should be Doxyfile, not DoxyFile).
|
|
|
|
2010-02-04 the_fiddler
|
|
|
|
* Build.exe: Updated with documentation support.
|
|
|
|
* Source/Build/Build.cs: Improved output messages when generating
|
|
documentation.
|
|
|
|
* Source/Build/Build.cs, Source/Build/Resources/DoxyFile.txt: Do
|
|
not report doxygen warnings. Run pdflatex and makeindex in quiet
|
|
mode.
|
|
|
|
* Source/Build/Build.cs,
|
|
Source/Build/Properties/Resources.Designer.cs,
|
|
Source/Build/Properties/Resources.resx,
|
|
Source/Build/Resources/DoxyFile.txt: Added support for 'doc'
|
|
target, which generates html and pdf documentation (requires
|
|
doxygen and latex). Fixed implementation of DeleteFiles and
|
|
DeleteDirectories.
|
|
|
|
* Documentation/Source: Removed empty source documentation
|
|
directory from source control. This directory is created as
|
|
necessary when generating documentation.
|
|
|
|
2010-02-03 the_fiddler
|
|
|
|
* Source/Bind/Specifications/GL2/enumext.spec,
|
|
Source/Bind/Specifications/GL2/gloverrides.xml,
|
|
Source/OpenTK/Graphics/OpenGL/GL.cs,
|
|
Source/OpenTK/Graphics/OpenGL/GLCore.cs,
|
|
Source/OpenTK/Graphics/OpenGL/GLDelegates.cs,
|
|
Source/OpenTK/Graphics/OpenGL/GLEnums.cs,
|
|
Source/OpenTK/Graphics/OpenGL/GLHelper.cs: Added explicit
|
|
ActiveUniformParameter enum for GetActiveUniforms function. Fixes
|
|
issue [#1443]: "GetActiveUniforms parameter name".
|
|
|
|
* Source/Bind/Specifications/GL2/enumext.spec,
|
|
Source/OpenTK/Graphics/OpenGL/GLEnums.cs: Added missing
|
|
TEXTURE_LOD_BIAS token to TextureParameterName. Fixes issue
|
|
[#1531]: "TextureParameterName enum missing TEXTURE_LOD_BIAS
|
|
element".
|
|
|
|
* Source/Bind/Specifications/GL2/enumext.spec,
|
|
Source/Bind/Specifications/GL2/gloverrides.xml,
|
|
Source/OpenTK/Graphics/OpenGL/GL.cs,
|
|
Source/OpenTK/Graphics/OpenGL/GLCore.cs,
|
|
Source/OpenTK/Graphics/OpenGL/GLDelegates.cs,
|
|
Source/OpenTK/Graphics/OpenGL/GLEnums.cs,
|
|
Source/OpenTK/Graphics/OpenGL/GLHelper.cs: Added specific
|
|
ArrayCap enum for Enable/DisableClientState. Fixes issue [#1538]:
|
|
"GLCore.cs: EnableClientState()".
|
|
|
|
* Source/OpenTK/Graphics/Color4.cs: Color4.ToArgb() should scale
|
|
components from clamped floats [0.0, 1.0] to unsigned bytes [0,
|
|
255]. Fixes issue [#1504]: "Color4.ToArgb returns wrong results".
|
|
|
|
* Source/OpenTK/Math/Vector2d.cs, Source/OpenTK/Math/Vector3d.cs,
|
|
Source/OpenTK/Math/Vector4d.cs: Converted single-precision
|
|
constants to double-precision in double-precision calculations.
|
|
|
|
* Source/OpenTK/Math/Vector2d.cs, Source/OpenTK/Math/Vector3d.cs,
|
|
Source/OpenTK/Math/Vector4d.cs: Do not cast to float when
|
|
calculating double-precision vector Length. Fixes issue [#1542]:
|
|
"Vector3d.Length casts result to float".
|
|
|
|
2010-01-28 kanato
|
|
|
|
* Source/OpenTK/Platform/MacOS/AglContext.cs,
|
|
Source/OpenTK/Platform/MacOS/CarbonGLNative.cs: Fix reported
|
|
Width, Height properties for full screen window.
|
|
|
|
* Source/OpenTK/GameWindow.cs: Correct NullReferenceException when
|
|
initializing GameWindow with GameWindowFlags.FullScreen.
|
|
|
|
2010-01-21 the_fiddler
|
|
|
|
* Source/OpenTK/Graphics/GraphicsContext.cs: Use the correct
|
|
GetCurrentContext() implementation depending on whether we are
|
|
using native or embedded (EGL) contexts.
|
|
|
|
2010-01-20 the_fiddler
|
|
|
|
* Source/OpenTK/Platform/Egl/EglWinPlatformFactory.cs,
|
|
Source/OpenTK/Platform/Egl/EglX11PlatformFactory.cs: Use
|
|
Egl.GetCurrentContext() instead of Wgl/Glx.GetCurrentContext() in
|
|
EglContext.
|
|
|
|
2010-01-11 kanato
|
|
|
|
* Source/OpenTK/Platform/MacOS/CarbonGLNative.cs: Backport
|
|
Width/Height fix (rev. 2577) for MacOS implementation.
|
|
|
|
2009-12-27 the_fiddler
|
|
|
|
* Source/OpenTK/Platform/Egl/EglContext.cs: Use the graphics mode
|
|
that was selected by EglGraphicsMode.SelectGraphicsMode() instead
|
|
of the native, platform-specific one. Fixes issue [#1483]: "ES20
|
|
application problem, Graphicmode with stencil buffer?"
|
|
|
|
* Source/OpenTK/Platform/Egl/EglWinPlatformFactory.cs: Try to
|
|
retrieve the EGL display for the current DC before falling back
|
|
to the default display.
|
|
|
|
* Source/OpenTK/Platform/Egl/Egl.cs,
|
|
Source/OpenTK/Platform/Egl/EglContext.cs,
|
|
Source/OpenTK/Platform/Egl/EglGraphicsMode.cs,
|
|
Source/OpenTK/Platform/Egl/EglWinPlatformFactory.cs,
|
|
Source/OpenTK/Platform/Egl/EglWindowInfo.cs,
|
|
Source/OpenTK/Platform/Egl/EglX11PlatformFactory.cs: Replaced
|
|
struct wrappers over IntPtr by plain IntPtr types. This should
|
|
ensure correct p/invoke behavior regardless of the OS/CPU.
|
|
|
|
* Source/OpenTK/GameWindow.cs: Avoid enabling VSync repeatedly,
|
|
when VSyncMode is Adaptive and TargetRenderPeriod is 0. Should
|
|
remove jitter observed on specific configurations. Solves issue
|
|
[#1482]: "OnRenderFrame elapsed time".
|
|
|
|
* Source/Examples/OpenGLES/2.0/SimpleWindow20.cs: Renamed, since
|
|
example doesn't use immediate mode. Removed unused code.
|
|
|
|
2009-12-26 the_fiddler
|
|
|
|
* Source/OpenTK/Audio/AudioContext.cs,
|
|
Source/OpenTK/Platform/X11/Bindings/Glx.cs,
|
|
Source/OpenTK/Platform/X11/X11GLContext.cs,
|
|
Source/OpenTK/Platform/X11/X11GLNative.cs,
|
|
Source/OpenTK/Platform/X11/X11Input.cs,
|
|
Source/OpenTK/Platform/X11/X11WindowInfo.cs: Marked as internal
|
|
so they don't appear in doxygen documentation.
|
|
|
|
2009-12-22 the_fiddler
|
|
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs: Avoid NRE when
|
|
setting the foreground window in WindowMessage.CREATE. Fixes
|
|
issue [#1467]: "Failure to initialize on Windows."
|
|
|
|
* Source/OpenTK/Input/MouseDevice.cs: Corrected rounding of
|
|
negative delta values. Fixes issue [#1446]:
|
|
"MouseWheelEventArgs.Delta".
|
|
|
|
2009-12-18 the_fiddler
|
|
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs: Calculate the
|
|
correct client rectangle when modifying width or height. Fixes
|
|
issue [#1457]: "GameWindow Width and Height properties are
|
|
inconsistent".
|
|
|
|
2009-12-15 the_fiddler
|
|
|
|
* Source/OpenTK/OpenTK.dll.config: Added missing OpenCL dllmap for
|
|
Mac OS X (thanks chrisse27).
|
|
|
|
2009-12-14 the_fiddler
|
|
|
|
* Source/OpenTK/Graphics/OpenGL/GLHelper.cs: * GLHelper.cs: Fixed
|
|
StackOverflowException in TexCoordPointer overload. (Issue
|
|
[#1444]: "TexCoordPointer creates StackOverflow").
|
|
|
|
2009-12-09 the_fiddler
|
|
|
|
* Source/Examples/OpenGLES/1.1/SimpleWindow.cs,
|
|
Source/Examples/OpenGLES/2.0/SimpleWindow20.cs: ClearColor takes
|
|
a clamped float in the range 0.0-1.0, instead of a byte argument.
|
|
|
|
* Source/OpenTK/Platform/EmbeddedGraphicsContext.cs: Do not attempt
|
|
to load ES10 and ES11 entry points, as these are disabled in
|
|
1.0.0.
|
|
|
|
2009-12-06 the_fiddler
|
|
|
|
* Source/OpenTK/Audio/OpenAL/AL/AL.cs: Clarified documentation for
|
|
alGetListener3f parameters.
|
|
|
|
* Source/Bind/Specifications/GL2/enumext.spec,
|
|
Source/OpenTK/Graphics/OpenGL/GLEnums.cs: Added missing 3.1 core
|
|
PRIMITIVE_RESTART token. Fixes issue [#1422]: "Missing
|
|
EnableCap.PrimitiveRestart".
|
|
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs: Removed IME class
|
|
style. Fixes the alt-tab order issue, where NativeWindows would
|
|
always appear last in the tab order (issue [#1244]: "Alt+Tab
|
|
weirdness"). Removed VRedraw and HRedraw class styles (not
|
|
necessary, since we are not relying on WM_PAINT messages).
|
|
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs: Removed unused
|
|
code.
|
|
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs: Ensure window is
|
|
activated and focused when created.
|
|
|
|
* Source/OpenTK/GameWindow.cs,
|
|
Source/OpenTK/Platform/X11/X11GLContext.cs,
|
|
Source/OpenTK/Platform/X11/X11GLNative.cs: Do not call Dispose()
|
|
automatically on GameWindow.Close(). Ensure that Unload event is
|
|
raised before window destruction, Ensure that Render and
|
|
UpdateFrame events are not called once the shutdown sequence is
|
|
initiated.
|
|
|
|
* Source/OpenTK/Platform/Windows/API.cs,
|
|
Source/OpenTK/Platform/Windows/WinGLNative.cs: *
|
|
OpenTK/Platform/Windows/API.cs: added SetForegroundWindow
|
|
dllimport.
|
|
|
|
* OpenTK/Platform/Windows/WinGLNative.cs: Move window to the
|
|
foreground before entering fullscreen mode.
|
|
|
|
2009-11-25 the_fiddler
|
|
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs: Correctly reset
|
|
Visible state when changing WindowBorder. Fixes issue [#1418]:
|
|
"[OpenTK] Invisible window when changing from Fullscreen to
|
|
Normal WIndowState on Windows 7".
|
|
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs: Fixed build
|
|
breakage introduced in r2551.
|
|
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs: Removed stale
|
|
code.
|
|
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs: Use
|
|
TrackMouseEvent function for generating MouseEnter/MouseLeave
|
|
events. Resolves issues associated with SetCapture and windows
|
|
focus (bug [#1419]: "[OpenTK] NativeWindow reported as focused
|
|
whenever mouse enters its area, even without clicking (win32)").
|
|
|
|
* Source/OpenTK/Platform/X11/X11GLNative.cs: * X11GLNative.cs: Only
|
|
raise WindowStateChanged when the relevant PropertyNotify event
|
|
arrives. Fixes issue [#966]: "[GameWindow] Changing WindowBorder
|
|
from Hidden to Normal/Fixed does not update the relevant property
|
|
on KDE4.2".
|
|
|
|
* Source/Examples/OpenGL/1.1/VertexArrays.cs,
|
|
Source/Examples/OpenGL/1.1/VertexLighting.cs,
|
|
Source/Examples/OpenGL/GLSL/SimpleGLSL.cs,
|
|
Source/Examples/OpenTK/GameWindow/FullscreenAntialias.cs,
|
|
Source/Examples/OpenTK/GameWindow/SimpleWindow.cs,
|
|
Source/Examples/OpenTK/Test/Multithreading.cs,
|
|
Source/Examples/Utilities.cs: Normalized keyboard handling to use
|
|
F11 for fullscreen/normal switches.
|
|
|
|
2009-11-23 kanato
|
|
|
|
* Source/OpenTK/Platform/MacOS/AglContext.cs: MacOS: Fix context
|
|
sharing.
|
|
|
|
* Source/OpenTK/GameWindow.cs, Source/OpenTK/NativeWindow.cs,
|
|
Source/OpenTK/Platform/MacOS/AglContext.cs,
|
|
Source/OpenTK/Platform/MacOS/CarbonGLNative.cs,
|
|
Source/OpenTK/Platform/MacOS/CarbonWindowInfo.cs: MacOS:
|
|
Implement CarbonWindowInfo hack for going fullscreen.
|
|
|
|
---------------------------------
|
|
OpenTK 1.0 beta-1 -> 1.0 beta-2
|
|
---------------------------------
|
|
|
|
2009-11-17 the_fiddler
|
|
|
|
* Removed unused code.
|
|
* Fixed OnUpdateFrame timing calculation (the previous
|
|
implementation could overshoot the target by up to 50%).
|
|
Refactored Update-/RenderFrame dispatching into a separate
|
|
method.
|
|
* Updated release notes for 1.0 beta-2 release.
|
|
* Bumped version numbers for 1.0 beta-2 release.
|
|
* Added VertexAttribPointer(..., int) and DrawElements(..., int)
|
|
overloads.
|
|
* Fixed NormalPointer and FogCoordPointer parameters. Added missing
|
|
TexCoordPointer(..., int) overload. Added DrawElements(..., int)
|
|
overload. Renamed the last parameter from pointer to offset, to
|
|
clarify its intent. (Fixes isse [#1386]: "Add overloads for
|
|
TexCoordPointer and NormalPointer".)
|
|
* Completely disabled CL10, ES10 and ES11 wrappers. They won't be
|
|
in the 1.0 release, we can reduce download size a bit.
|
|
* Type, Parameter, ParameterCollection and Function classes now
|
|
implement IComparable directly (rather than casting to strings
|
|
and comparing those). Modified comparison order to place pointer
|
|
overloads after reference or array overloads. Fixes issue
|
|
[#1098]: "[Bind] Work around VS bug by ensuring pointer
|
|
parameters are generated last".
|
|
|
|
2009-11-16 the_fiddler
|
|
|
|
* Added strongly-typed tokens for GetActiveUniformBlock, which was
|
|
introduced in OpenGL 3.1. Fixes issue [#1216]: "[GL]
|
|
GetActiveUniformBlock* methods take ArbUniformBufferObject
|
|
parameters".
|
|
* Added new OpenGL 3.1 tokens for ARB_texture_rectangle,
|
|
ARB_shader_objects and EXT_gpu_shader4. Fixes issue [#1355]:
|
|
"TextureRectangle tokens for ActiveUniformType".
|
|
* VertexAttribIPointer should take the integer subset
|
|
(VertexAttribIPointerType) of VertexAttribPointerType. Fixes
|
|
issue [#1166]: "VertexAttribIPointer pointer type parameter".
|
|
* Removed invalid BGRA token from VertexAttribPointerType.
|
|
* Made unix kernel detection less strict. The program is now
|
|
allowed to run even the specific kernel name is unknown. Partly
|
|
fixes issue [#1382]: "OpenTK and other Unix OS".
|
|
* Added new OpenGL 3.x tokens to GenerateMipmap. Fixes issue
|
|
[#1162]: "GL.GenerateMipmap argument".
|
|
* Vector3(d).Cross: do not modify 'result' more than once to ensure
|
|
that Cross(ref a, ref b, out a) works correctly. Optimized
|
|
vector-quaternion transform. Fixes issue [#1373]: "[Math]
|
|
optimize Vector transform by Quaternion".
|
|
* Changed vector-quaternion transformations to use standard q * v *
|
|
q^-1 convention. Fixes issue [#1372]: "[Math] Vector
|
|
transformation by Quaternion follows non-standard quaternion math
|
|
convention".
|
|
* Added support for fractional mouse wheel values. Fixes issue
|
|
[#1279]: "Mouse wheel does not seem to work".
|
|
* Renamed "Entry" to "Unmanaged Name" to clarify its purpose.
|
|
* Make context current on loading thread and be more defensive when
|
|
retrieving unmanaged entry points. Resolves issue [#1378]:
|
|
"OpenGL Extensions test fails".
|
|
* Launch samples on a different thread than the launcher. Samples
|
|
may install their own message loops and some operating systems do
|
|
not behave correctly with multiple message loops on a single
|
|
thread.
|
|
* Preserve the sign of the mouse position. Fixes issue [#1376]:
|
|
"mouse position".
|
|
* Fixed InvalidCastException in keyboard logging delegates.
|
|
|
|
2009-11-15 kanato
|
|
|
|
* MacOS: Fix crash in CheckEnterLeaveEvents if using WinForms too.
|
|
* MacOS: Correct resizing behavior and correctly implement Bounds,
|
|
ClientRectangle, and ClientSize getters and setters.
|
|
* MacOS: Add proper icon support for the dock.
|
|
* MacOS: Implement Focused property and FocusChanged event.
|
|
* MacOS: Implement mouse enter / leave events.
|
|
|
|
2009-11-14 kanato
|
|
|
|
* MacOS: Clean up AglContext destruction code. Implement
|
|
INativeWindow.Close method.
|
|
* MacOS: Several minor fixes: * Implement MouseWheel event *
|
|
Implement KeyPress event * Fix generation of MouseMove events *
|
|
Fix right mouse button up event
|
|
* MacOS: Fix bug where application started from the command line
|
|
would not be in the foreground and not respond to keyboard
|
|
events.
|
|
|
|
2009-11-12 the_fiddler
|
|
|
|
* Do not hook ProcessExit event if an X server is not available.
|
|
Should fix issue [#1364]: 1.0 beta-1 throws
|
|
TypeInitializationException in OpenTK.Platform.X11.API when
|
|
running on windows. Cleaned up stale comments and code.
|
|
|
|
2009-11-11 the_fiddler
|
|
|
|
* * Vector4.cs: * Vector3.cs: * Vector2.cs: * Vector4d.cs: *
|
|
Vector3d.cs: * Vector2d.cs: Removed code using C# 3.0 features.
|
|
* * BlittableValueType.cs: Clarify how BlittableValueType<T>.Stride
|
|
works on non-blittable types.
|
|
* * Source/OpenTK/BlittableValueType.cs: Removed struct constraint.
|
|
Sometimes consumers of this class may not be able to use struct
|
|
generic constraints - the class is now usable in this case. *
|
|
Source/Examples/OpenTK/Test/BlittableValueTypes.cs: Test
|
|
BlittableValueType class using several different types.
|
|
|
|
|
|
------------------------------
|
|
OpenTK 0.9.9-3 -> 1.0 beta-1
|
|
------------------------------
|
|
|
|
2009-11-10 the_fiddler
|
|
|
|
* Added missing license information.
|
|
* Updated documentation for release.
|
|
* Disabled CL10, ES10 and ES11 bindings which were not finalized in
|
|
time for OpenTK 1.0.
|
|
* Updated documentation for release.
|
|
* Color4Serialization example now correctly prints its output
|
|
messages.
|
|
* Color4(byte, byte, byte, byte) constructor now correctly
|
|
normalizes values to the 0.0 - 1.0 range.
|
|
|
|
2009-11-09 the_fiddler
|
|
|
|
* Added keyfiles to ignore list.
|
|
* Fixed keyfile handling in Visual Studio.
|
|
* Updated ignore rules.
|
|
* Updated ignore rules.
|
|
* Branched for 1.0 release.
|
|
* Fixed a large number of recurring spelling mistakes in
|
|
documentation (patch by iRBiS). Fixes issue [#1341]: "Vector4
|
|
constructor describes w component as z component + other spelling
|
|
corrections".
|
|
* Fixed documentation which describes w components as z components
|
|
(patch by iRBiS).
|
|
* Updated ignore lists.
|
|
|
|
2009-11-09 kanato
|
|
|
|
* MacOS: Hack for AGL to have access to the display device
|
|
specified when a NativeWindow is created.
|
|
* MacOS: Detect display boundaries so created windows are placed in
|
|
the right spot.
|
|
* MacOS: Fix event from user clicking close box to properly report
|
|
that window doesn't exist anymore.
|
|
* Mac OS X Fix for GameWindow to call glContext.Update when resized
|
|
|
|
2009-11-08 the_fiddler
|
|
|
|
* Added System.Drawing reference back to QuickStart project (see
|
|
previous commit).
|
|
* Disabled OpenTK.Point, Size and Rectangle structures that were
|
|
meant to replace their System.Drawing implementations until the
|
|
correct course of action can be determined. This change is too
|
|
disruptive to existing applications, especially if they are also
|
|
using Windows.Forms (see discussion here:
|
|
http://www.opentk.com/node/1348).
|
|
* Don't display window by default, unless "Visible = true" is
|
|
called. Allows the creation of invisible windows for secondary
|
|
GraphicsContexts.
|
|
* Added a second terminating 0 to attribute list, trying to work
|
|
around issue [#1352]: "Occasional AccessViolationExceptions when
|
|
creating the GLControl".
|
|
|
|
2009-11-07 the_fiddler
|
|
|
|
* Added system-defined colors.
|
|
Added and improved constructors (more versatile).
|
|
Added ToArgb() method for improved System.Drawing.Color interop.
|
|
* Use SHOW command instead of SHOWNORMAL when making a window
|
|
visible, since SHOWNORMAL will un-maximize a fullscreen or
|
|
maximized window.
|
|
Do not force an invisible window to become visible when modifying
|
|
its state or borders.
|
|
* Always set the DisplayDevice.Bounds to a correct value. Fixes
|
|
issue [#1339]: "DisplayDevice.Bounds not set".
|
|
* Do not check for an X server if we detect Mac OS X. Should solve
|
|
issue [#1338]: "Running apps in Mac OSX start a application
|
|
called X11".
|
|
|
|
2009-11-06 the_fiddler
|
|
|
|
* Update the context when the native window is resized.
|
|
* MacOS may have an X server installed. Prefers the native
|
|
Carbon/Quartz platform driver over X in this case (same issue as
|
|
rev. 2465).
|
|
* Correctly set the primary device in the DisplayDevice
|
|
constructor.
|
|
* MacOS can have an X server installed. Modified the code so that
|
|
it prefers the native Carbon/Quartz platform driver over X in
|
|
this case.
|
|
* Fixed spelling of hertz and fps. Fixes issue [#1333]: "Spelling
|
|
of SI units in documentation and captions". Patch by iRBiS.
|
|
* Return proper CarbonWindowInfo instance instead of
|
|
DummyWindowInfo.
|
|
* * Rectangle.cs: Fixed ToString formatting code.
|
|
* * Platform/Windows/WinDisplayDevice.cs:
|
|
* Platform/MacOS/QuartzDisplayDeviceDriver.cs: Updated to use the
|
|
new
|
|
DisplayDevice constructors.
|
|
|
|
* Platform/X11/X11XrandrDisplayDevice.cs: Query Xinerama for the
|
|
exact
|
|
bounds of each display device, if available.
|
|
Use global X lock to protect from multithreaded access.
|
|
* * DisplayDevice.cs: Made DisplayDevice properties settable
|
|
internally (simplifies device detection code).
|
|
Bounds property is now independent of the default resolution.
|
|
|
|
* DisplayResolution.cs: Obsoleted the Bounds property, as this
|
|
becomes
|
|
invalid as soon as the resolution of any display device is
|
|
changed.
|
|
|
|
2009-11-05 the_fiddler
|
|
|
|
* * X11GLNative.cs: Convert from ASCII to the default encoding
|
|
before generating KeyPress events (allows support for simple
|
|
scripts that do not use composition.)
|
|
* * X11GLNative.cs: Implemented KeyPress event (no support for
|
|
input
|
|
methods yet).
|
|
|
|
* Functions.cs: Added XLookupString and XRefreshKeyboardMapping
|
|
methods for simple ANSI text input.
|
|
|
|
2009-11-04 the_fiddler
|
|
|
|
* Removed System.Drawing dependency from QuickStart.
|
|
* Added missing TitleChanged event.
|
|
* Removed unused code.
|
|
* Cleaned up deprecated methods.
|
|
* Cleaned up a large number of documentation issues.
|
|
* Updated deprecation message with specific instructions on how to
|
|
solve the issue.
|
|
* Added helper overloads for OpenTK.Point/Rectangle structures.
|
|
* Enabled System.Drawing.Point/Size/Rectangle replacements.
|
|
* Refactored timer installation/removal into their own methods.
|
|
* Added simpler constructor overload for external GraphicsContexts.
|
|
* Don't forget to load all bindings when constructing an external
|
|
context - this constructor was added for precisely this reason,
|
|
after all.
|
|
* Deprecated the LoadAll() method in favor of the new
|
|
GraphicsContext constructors.
|
|
* Added missing base.On* calls.
|
|
* Support external EGL contexts.
|
|
* Added missing documentation to GraphicsContext constructor.
|
|
* Renamed internal BindingsBase.LoadAll/Load methods to
|
|
LoadEntryPoints/LoadEntryPoint, in order to avoid name clashes
|
|
with the static GL.LoadAll() method.
|
|
Added GraphicsContext() constructor that takes an existing, valid
|
|
OpenGL context. This can be used for interop with third-party
|
|
toolkits which create the OpenGL context themselves.
|
|
* Set window title and icon.
|
|
* Doubled the size of particles and made them slightly faster.
|
|
* Cleaned up sample, added color and motion.
|
|
* Initialize threads before calling any other X methods.
|
|
* Removed unnecessary debugging messages from main loop.
|
|
* Added Toolkit.Init() method that can be used to configure the
|
|
underlying platform correctly when using OpenTK along with other
|
|
toolkits (e.g. OpenTK+GTK# on X, where GTK# does not initialize
|
|
threads).
|
|
* Default window style flags can be constants rather than static
|
|
readonly fields.
|
|
Throw an exception if we fail to register the window class, the
|
|
previous solution (check for "class already exists" error) was a
|
|
workaround for a threading issue that has been solved.
|
|
Set the small icon when registering the class.
|
|
* Now recognizes Resources folder for Examples project.
|
|
Added icon to Examples project.
|
|
* Added default icon to samples and the example browser.
|
|
* Added default application icon.
|
|
|
|
2009-11-03 the_fiddler
|
|
|
|
* Fixed ClassName and ModalLoopTimerId when constructing multiple
|
|
WinGLNative windows in parallel.
|
|
WinGLNative windows are now correctly focused when clicked on the
|
|
client area.
|
|
* Serialize context construction to avoid threading issues with
|
|
shared contexts.
|
|
* Avoid static caching of extension strings and improve
|
|
multithreading behavior - WGL extension checking is fast enough
|
|
that caching is not very useful.
|
|
* Added SyncRoot object to BindingsBase that can be used to protect
|
|
shared state in the various bindings.
|
|
* Fixed race condition in GraphicsMode.Default.
|
|
* No need to burn 100% CPU time just for a spinning cube!
|
|
(Especially important for the multithreading test, which opens
|
|
multiple such windows).
|
|
* Use new string(sbyte*) instead of Marshal.PtrToStringAnsi to
|
|
increase performance when calling GetString to retrieve the list
|
|
of available extensions.
|
|
* Implemented Tranform(Vector, Quaternion) overloads. Fixes issue
|
|
[#1028]: "[Math] Add vector transformation by quaternion".
|
|
* Deprecated Mult in favor of Multiply.
|
|
Modified operator * to use Multiply internally (reduces code
|
|
duplication).
|
|
* Fixed Vector3.Transform signature to return a Vector3, not a
|
|
Vector4. It was previously impossible to transform a Vector3
|
|
structure without intermediate conversions to Vector4.
|
|
* Modified Transform(ref Vector4, ref Matrix4, out Vector4)
|
|
overload to work correctly when the ref and out parameters point
|
|
to the same Vector4.
|
|
Modified Transform(Vector4, Matrix4): Vector4 to call the
|
|
reference overload internally. Faster and reduces code
|
|
duplication.
|
|
* Added missing TextureBuffer token to BufferTarget and
|
|
TextureTarget enums (promoted from ARB_texture_buffer_object).
|
|
Fixes issue [#1313]: "TextureBuffer target".
|
|
* Added type-safe parameters to FramebufferTexture (fixes issue
|
|
[#1303]: "[GL] fix FramebufferTexture parameters").
|
|
* Added multithreading test to verify GameWindow behavior with
|
|
multiple threads.
|
|
* * DocProcessor.cs: Remove any trailing newlines in XML docs.
|
|
Output
|
|
between Mono/Linux and .Net/Windows is now consistent.
|
|
|
|
2009-11-02 the_fiddler
|
|
|
|
* Use more aggressive xlib locking following the advice of the
|
|
multithreaded X manpages (needs work).
|
|
* Do not allow MakeCurrent() to change the display connection of
|
|
the context. This would result in an X error and the change
|
|
allows us to simplify shutdown/cleanup logic.
|
|
* * Matrix4d.cs: M44 should be 1.0 to conform with GL.Ortho().
|
|
Fixes issue [#1307]: "GL.Ortho behaves other than combination of
|
|
OpenTK.Matrix4d.CreateOrthographic and GL.MultMatrix".
|
|
* Qualify System.Drawing.Rectangle/Point/Size structs fully when
|
|
necessary, to avoid namespace clash with
|
|
OpenTK.Rectangle/Point/Size.
|
|
* Added experimental Icon and IconConverter implementations from
|
|
Mono.
|
|
Modified INativeWindow implementations to not qualify Icon class
|
|
fully, so we can change the implementation between System.Drawing
|
|
and OpenTK at will (using the EXPERIMENTAL #define).
|
|
* Improved interoperation with System.Drawing with new addition,
|
|
subtraction and implicit conversion operators, as well as
|
|
additional method overloads.
|
|
Only expose fields through public properties to allow for
|
|
parameter validation.
|
|
|
|
2009-11-01 the_fiddler
|
|
|
|
* Updated version numbers in preparation for release.
|
|
* Fixed an issue where "const unsigned [type] [pointer]" parameters
|
|
where not parsed correctly. Solves issue [#1300]: "[OpenCL]
|
|
Possible bug at CL.CreateProgramWithBinary".
|
|
* Added experimental OpenTK.Point/Size/Rectangle alternatives to
|
|
System.Drawing, to make OpenTK usable without referencing
|
|
System.Drawing (disabled by default, #define EXPERIMENTAL to
|
|
test). Modified a number of using directives and namespace
|
|
qualifiers to accommodate this change.
|
|
* Document that these APIs are incomplete.
|
|
|
|
2009-10-28 the_fiddler
|
|
|
|
* Merged es20 branch back into trunk.
|
|
* Initialize input vectors to random values.
|
|
Use smaller data blocks that can be verified visually.
|
|
Perform error checking when executing the kernel.
|
|
Wait for the command queue to finish before displaying the
|
|
results.
|
|
* Recognize and copy dds files as part of example resources.
|
|
* Renamed dds textures to not contain strange characters that
|
|
confuse Prebuild.
|
|
Added checks for extension support to SwizzledParallax sample.
|
|
* Return readonly IList<> instead of copying arrays of data.
|
|
|
|
2009-10-27 the_fiddler
|
|
|
|
* Track mouse enter/leave events.
|
|
* Implemented INativeWindow.MouseEnter/MouseLeave events on Win32
|
|
and X11.
|
|
* Generate UpdateFrame events even if TargetUpdateFrequency is 0.
|
|
According to the documentation, setting this value to 0 will
|
|
result in unconstrained UpdateFrame frequency. Fixes issue
|
|
[#1294]: "OnUpdateFrame function does not work with maximum
|
|
update rate".
|
|
|
|
2009-10-24 the_fiddler
|
|
|
|
* Do not qualify Stopwatch fully, to allow it to be overridden by
|
|
Minimal.cs if necessary.
|
|
* Provide dummy implementations for classes not available on the
|
|
iPhone.
|
|
* Plane.cs belongs to the 'old' structures.
|
|
* Merged Inertia's example and geometry branch,
|
|
|
|
2009-10-23 the_fiddler
|
|
|
|
* Fixed x86-specific ABI assumption (do not pass structure directly
|
|
when a pointer is expected). Patch by jonp.
|
|
* Added dllmap for OpenGL|ES on Mac OS X.
|
|
* Debug.WriteLine(object, string) does not work as intended (the
|
|
first parameter defines the category). Use Debug.Print instead.
|
|
* Fixed x86-specific ABI assumption (do not return structure
|
|
directly when a pointer is expected). Patch by jonp.
|
|
|
|
2009-10-22 the_fiddler
|
|
|
|
* Do not force control to create its handle in Resize event (the
|
|
designer places code that raises this event before the rest of
|
|
the events are hooked). Instead, suppress the event and raise it
|
|
once the handle is actually created.
|
|
|
|
2009-10-21 the_fiddler
|
|
|
|
* Set default class cursor to avoid invalid cursors when entering
|
|
the window.
|
|
* Added LoadCursor method.
|
|
Added CursorName enum (only default arrow cursor is defined for
|
|
now).
|
|
* Use StringBuilder.Capacity to specify the available buffer size
|
|
in OpenGL interop (StringBuilder.Length is invalid in this case).
|
|
Added workaround for Mono 1.9.1 issue, where StringBuilder return
|
|
truncated results when used in interop. Doubling
|
|
|
|
|
|
----------------------------
|
|
OpenTK 0.9.9-2b -> 0.9.9-3
|
|
----------------------------
|
|
|
|
2009-10-21 the_fiddler
|
|
|
|
|
|
|
|
* Documentation/Changelog.txt, Documentation/Release.txt, Source/Compatibility/Properties/AssemblyInfo.cs, Source/Examples/Properties/AssemblyInfo.cs, Source/GLControl/Properties/AssemblyInfo.cs: Bumped version numbers and updated documentation in preparation of 0.9.9-3 release.
|
|
|
|
* Source/Examples/OpenGL/1.1/DisplayLists.cs, Source/Examples/OpenGL/1.1/ImmediateMode.cs, Source/Examples/OpenGL/1.1/Textures.cs, Source/Examples/OpenGL/1.1/VertexArrays.cs, Source/Examples/OpenGL/1.1/VertexLighting.cs, Source/Examples/OpenGL/1.5/VertexBufferObject.cs, Source/Examples/OpenGL/3.0/HelloGL3.cs, Source/Examples/OpenGL/EXT/FramebufferObject.cs, Source/Examples/OpenGL/EXT/GeometryShader.cs, Source/Examples/OpenGL/EXT/GeometryShaderAdvanced.cs, Source/Examples/OpenGL/GLSL/JuliaSetFractal.cs, Source/Examples/OpenGL/GLSL/SimpleGLSL.cs, Source/Examples/OpenGLES/1.1/SimpleWindow.cs, Source/Examples/OpenGLES/2.0/SimpleWindow20.cs, Source/Examples/OpenTK/Fonts/FontRenderingAdvanced.cs, Source/Examples/OpenTK/GameWindow/FullscreenAntialias.cs, Source/Examples/OpenTK/GameWindow/SimpleWindow.cs, Source/Examples/OpenTK/Test/GameWindowStates.cs, Source/OpenTK/GameWindow.cs, Source/QuickStart/Game.cs: OnLoad/OnUnload should be protected, not public, to conform with the class
|
|
|
|
library design guidelines. This issue was supposed to be fixed in 0.9.9-2, but was apparently overlooked.
|
|
|
|
* Source/OpenTK/Platform/MacOS/AglContext.cs, Source/OpenTK/Platform/Windows/WinGLContext.cs, Source/OpenTK/Platform/X11/X11GLContext.cs: Avoid accessing OpenTK.Graphics.OpenGL from platform-specific code. Reduces coupling and code-duplication.
|
|
* Source/Examples/OpenGL/1.1/DisplayLists.cs, Source/Examples/OpenGL/1.1/Textures.cs, Source/Examples/OpenGL/EXT/FramebufferObject.cs, Source/Examples/OpenGL/EXT/GeometryShader.cs, Source/Examples/OpenGL/EXT/GeometryShaderAdvanced.cs, Source/Examples/OpenGL/GLSL/JuliaSetFractal.cs, Source/Examples/OpenGL/GLSL/SimpleGLSL.cs: Fixed compilation issue caused by OnUnload access modifier changed (public -> protected).
|
|
|
|
2009-10-20 the_fiddler
|
|
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs: Trap WM_SYSCHAR to avoid generating system beeps on Alt+[Key] combinations.
|
|
|
|
2009-10-19 the_fiddler
|
|
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs, Source/OpenTK/WindowBorder.cs, Source/OpenTK/WindowState.cs: Revert WindowBorder and WindowState value changes.
|
|
Use Nullable types to detect when WindowBorder and WindowState is not set.
|
|
* Source/OpenTK/Platform/X11/X11GLNative.cs: * X11GLNative.cs: Added more defensive checks for the existence of the window before issuing XDestroyWindow.
|
|
Do not allow multiple calls to XDestroyWindow once the shutdown sequence has been initialized. Fixes issue [#1190]: "GameWindow dispose on linux".
|
|
* Source/OpenTK/Platform/X11/X11GLNative.cs: * X11GLNative.cs: Correctly set all necessary ClientMessage fields
|
|
for XSendEvent call in Close() method.
|
|
* Source/OpenTK/Platform/X11/Functions.cs: * Functions.cs: Added helper function for XSendEvent, so that we
|
|
don't need to cast the EventMask to IntPtr.
|
|
* Source/OpenTK/Platform/X11/X11GLContext.cs: * X11GLContext.cs: Correctly set GraphicsMode in constructor (resolves issue [#1175]: "Graphics] GraphicsContext.GraphicsMode property returns null on Linux").
|
|
* Source/OpenTK/OpenTK.dll.config: Added dllmap for OpenCL on Linux.
|
|
* Source/Compatibility/OpenTK.Compatibility.dll.config: Added missing OpenTK.Compatibility.dll.config file. Fixes issue [#1176]: "[Compat] OpenTK.Compatibility is missing dll.config file".
|
|
* Source/Examples/OpenCL/VectorAdd.cs: * OpenCL/VectorAdd.cs: Use hCmdQueue instead of hContext and added
|
|
missing CL.EnqueueWriteBuffer calls (patch by mike vasiljevs, fixes
|
|
issue [#1233]: "OpenCL - AddVector.cs - example corrections").
|
|
Output calculation results.
|
|
* Source/GLControl/GLControl.cs, Source/GLControl/GLControlFactory.cs: * GLControlFactory.cs: More defensive checks for null GraphicsModes.
|
|
|
|
|
|
* GLControl.cs: More defensive checks for null GraphicsModes.
|
|
Set flags, context version and GraphicsMode before calling
|
|
InitializeComponents(), as the latter might cause the context to be
|
|
created (and we need this information before creating the context).
|
|
Fixes ArgumentNullException on Linux.
|
|
* Source/OpenTK/Platform/X11/X11GLNative.cs: * X11GLNative.cs: Implemented Icon property for WMs that do not
|
|
respect _NET_WM_ICON (e.g. Gnome/Metacity/Compiz).
|
|
* Source/OpenTK/Platform/X11/Functions.cs, Source/OpenTK/Platform/X11/Structs.cs: * Functions.cs: Added a number of missing methods relating to
|
|
XWMHints, images, pixmaps and root windows.
|
|
Implemented Create[Mask|Pixmap]FromImage methods.
|
|
|
|
* Structs.cs: Added ImageFormat enum.
|
|
* Source/OpenTK/Graphics/OpenGL/GLHelper.cs: Route overloads through GL class instead of calling the Delegates directly. Ensures that automatic error checking will work as expected.
|
|
|
|
2009-10-18 the_fiddler
|
|
|
|
* Source/OpenTK/INativeWindow.cs, Source/OpenTK/NativeWindow.cs, Source/OpenTK/Platform/MacOS/CarbonGLNative.cs, Source/OpenTK/Platform/Windows/WinGLNative.cs: Implemented icon support.
|
|
* Source/Examples/OpenTK/Test/GameWindowStates.cs: Indicate whether the window is focused or not.
|
|
* Source/OpenTK/WindowBorder.cs, Source/OpenTK/WindowState.cs: Treat 0 as a special value (necessary for internal purposes).
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs: Focused property now returns correct values. FocusedChanged event is now correctly raised.
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs: Improved handling if WindowBorder changes when the window is WindowState is Maximized or Fullscreen. Maximized windows now correctly retain their maximized state, while fullscreen windows do not become non-fullscreen when their border is modified.
|
|
* Source/OpenTK/Platform/Windows/API.cs, Source/OpenTK/Platform/Windows/WinGLNative.cs: * API.cs: added MonitorFromWindow/MonitorFromPoint methods.
|
|
* WinGLNative.cs: fixed handling of WindowState.Maximized when WindowBorder is Hidden.
|
|
WindowStateChanged events are now correctly raised on all state changes.
|
|
|
|
2009-10-17 the_fiddler
|
|
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs: Do not print window title to debug stream inside the set_Title property. Instead, log an error only when the method call fails. Fixes issue [#1239]: "Debug.Print in Title property".
|
|
* Source/Bind/ES/ESGenerator.cs, Source/Bind/Specifications/CL10/overrides.xml, Source/Bind/Specifications/CL10/signatures.xml, Source/Bind/Specifications/ES10/overrides.xml, Source/Bind/Specifications/ES11/overrides.xml, Source/Bind/Specifications/ES20/overrides.xml, Source/Bind/Specifications/GL2/gloverrides.xml, Source/Bind/Structures/Delegate.cs, Source/Bind/Structures/Enum.cs, Source/Bind/Structures/Type.cs, Source/OpenTK/Compute/CL10/CL.cs, Source/OpenTK/Compute/CL10/Enums.cs, Source/OpenTK/Graphics/ES10/ES.cs, Source/OpenTK/Graphics/ES10/Enums.cs, Source/OpenTK/Graphics/ES11/ES.cs, Source/OpenTK/Graphics/ES11/Enums.cs, Source/OpenTK/Graphics/ES20/ES.cs, Source/OpenTK/Graphics/ES20/Enums.cs, Source/OpenTK/Graphics/OpenGL/GLEnums.cs: Added distinct /overrides/add and /overrides/replace elements.
|
|
Added check for the existence of override elements before trying to use them (avoids potential null reference exception).
|
|
Regenerated bindings using the latest version of the generator.
|
|
* Source/Bind/Structures/Function.cs, Source/OpenTK/Graphics/OpenGL/GL.cs: Fixed issue [#1240]: "Generic ref and out wrappers do not copy results to the reference parameter", by assigning the GCHandle.Target back to the reference parameter.
|
|
* Source/Bind/Specifications/ES20/overrides.xml, Source/OpenTK/Graphics/ES20/Core.cs, Source/OpenTK/Graphics/ES20/Delegates.cs, Source/OpenTK/Graphics/ES20/ES.cs: Added override for GetProgramInfoLog: infolog parameter should have a flow of 'out'.
|
|
|
|
2009-10-15 the_fiddler
|
|
|
|
* Source/GLControl/GLControl.cs: Added workaround for the "Resize event called before GraphicsContext is ready" issue.
|
|
* Source/OpenTK/Graphics/OpenGL/GLHelper.cs: Fixed GetDouble implementation to return correct values (should call GetDouble not GetFloat!) Fixes issue [#1235]: "Matrix4d wrong value on GL.GetDouble".
|
|
* Source/GLControl/GLControl.cs: Clarified GrabScreenshot() ObsoleteAttribute message.
|
|
|
|
2009-10-14 the_fiddler
|
|
|
|
* Source/Bind/ES/ESGenerator.cs: Support adding new enum definitions through overrides.xml.
|
|
* Source/Bind/Structures/Constant.cs, Source/Bind/Structures/Enum.cs: Avoid translating names that do not need translation (i.e. are not in ALL_CAPS).
|
|
* Source/OpenTK/Platform/Windows/API.cs, Source/OpenTK/Platform/Windows/WinGLNative.cs: Added LoadIcon method.
|
|
Made SHFILEINFO non-public.
|
|
Modified WinGLNative.cs to use Icon.ExctractAssociatedIcon() to set the application icon (needs work).
|
|
* Source/OpenTK/Platform/Windows/API.cs, Source/OpenTK/Platform/Windows/WinGLNative.cs: Added support for setting the application (use SHGetFileInfo to retrieve the correct icon and set it when constructing a new window).
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs: Restore previous window size when leaving fullscreen mode.
|
|
* Source/OpenTK/Math/Matrix4.cs, Source/OpenTK/Math/Matrix4d.cs: Corrected documentation on the M42 property. Fixes issue [#1227]: "Matrix4.M42 documentation".
|
|
* Source/QuickStart/Game.cs: Fixed documentation on the event args for the Resize event.
|
|
Ensure that we call the base method when we override an On* method.
|
|
|
|
2009-10-13 the_fiddler
|
|
|
|
* Source/OpenTK/Math/Matrix4d.cs: Added missing CreatePerspectiveFieldOfView and CreatePerspectiveOffCenter methods (fixes issue [#1226]: "Matrix4d.CreatePerspectiveFieldOfView").
|
|
Replaced several instances of float values by double equivalents.
|
|
|
|
2009-10-12 the_fiddler
|
|
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs: Workaround for modal loop blocking in ENTERMENULOOP event.
|
|
|
|
2009-10-09 the_fiddler
|
|
|
|
* Source/OpenTK/Compute/CL10/Enums.cs: * Enums.cs: Enums now use the inherit from the correct int or long type.
|
|
* Source/Bind/Specifications/CL10/signatures.xml: * signatures.xml: Fixed long enum types.
|
|
* Source/Converter/ESCLParser.cs: * ESCLParser.cs: Fixed long bitfield detection.
|
|
* Source/Bind/ES/ESGenerator.cs, Source/Bind/Structures/Enum.cs: * ES/ESGenerator.cs: Set enum Type property.
|
|
|
|
* Structures/Enum.cs: Added enum Type property.
|
|
Removed Enum(string) constructor in favor of C# 3.0 syntax (new Enum()
|
|
{ Name = ... }).
|
|
* Source/OpenTK/Compute/CL10/CL.cs: * CL.cs: Removed invalid documentation.
|
|
* Source/Bind/GL2/Generator.cs: * Generator.cs: Use Settings.FunctionPrefix when searching for
|
|
documentation (instead of hardcoded "gl" prefix).
|
|
* Source/Bind/CL/CLGenerator.cs, Source/Bind/Main.cs: * Main.cs:
|
|
* CL/CLGenerator.cs: Made CLGenerator inherit from ESGenerator. Reduces code duplication significantly.
|
|
* Source/Bind/Specifications/CL10/signatures.xml: * Specifications/CL10/signatures.xml: Updated specs with information on enum types (long or int).
|
|
* Source/Converter/ESCLParser.cs: * ESCLParser.cs: OpenCL bitfileds are defines as long, not int. Added 'type' attribute to enums, which can be 'long' or 'int'.
|
|
|
|
2009-10-07 the_fiddler
|
|
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs: Post a close message instead of destroying the window outright, when the user calls the Close() method. Ensures that the user can stop the exit sequence through the IsClosing event.
|
|
* Source/OpenTK/GameWindow.cs: * GameWindow.cs: Improved implementation of GameWindow.Exit(). It should now be possible to cancel the exit through the IsClosing event.
|
|
* Source/OpenTK/GameWindow.cs, Source/OpenTK/Platform/Windows/WinGLNative.cs: Generate Update/ResizeFrame events whenever the window is moved or resized. Partially fix for issue [#1218]: "[NativeWindow] Avoid modal loop during window resize/movement".
|
|
* Source/OpenTK/GameWindow.cs: Refactored and simplified the Run() loop.
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs: Added timer callback to WM_ENTERSIZEMOVE messages to avoid stalling the rendering during the modal size/move loop (which occurs when the user clicks the window bar or borders). Still need to find a way to notify the frontend (GameWindow) to process queued up UpdateFrame/RenderFrame events.
|
|
* Source/OpenTK/Platform/Windows/API.cs: Added SetTimer, KillTimer and TimerProc bindings.
|
|
* Source/OpenTK/Graphics/OpenGL/GLHelper.cs: * OpenGL/GLHelper.cs: Removed static GetAddress method in favor of
|
|
implementation inherited from GraphicsBindingsBase.
|
|
Disabled unused code.
|
|
* Source/OpenTK/Graphics/GraphicsContext.cs: * GraphicsContext.cs: Removed unused code.
|
|
* Source/OpenTK/Audio/AudioCapture.cs: * AudioCapture.cs: Fixed documentation warning.
|
|
* Source/OpenTK/Audio/OpenAL/AL/AL.cs, Source/OpenTK/Audio/OpenAL/Alc/AlcEnums.cs: * AL/AL.cs:
|
|
* Alc/AlcEnums.cs: Fixed documentation warnings.
|
|
* Source/OpenTK/BindingsBase.cs, Source/OpenTK/Graphics/BindingsBase.cs, Source/OpenTK/Graphics/GraphicsBindingsBase.cs: * BindingsBase.cs:
|
|
* Graphics/BindingsBase.cs:
|
|
* Graphics/GraphicsBindingsBase.cs: Moved GraphicsBindingsBase to its
|
|
own file.
|
|
Moved BindingsBase to root OpenTK folder (reason: BindingsBase is not
|
|
specific to OpenTK.Graphics anymore).
|
|
Documented GetAddress methods.
|
|
* Source/OpenTK/Graphics/BindingsBase.cs, Source/OpenTK/Graphics/ES10/Helper.cs, Source/OpenTK/Graphics/ES11/Helper.cs, Source/OpenTK/Graphics/ES20/Helper.cs, Source/OpenTK/Graphics/OpenGL/GLHelper.cs, Source/OpenTK/Platform/X11/GlxHelper.cs, Source/OpenTK/Platform/X11/X11GLContext.cs: * Graphics/ES10/Helper.cs:
|
|
* Graphics/ES11/Helper.cs:
|
|
* Graphics/ES20/Helper.cs:
|
|
* Graphics/BindingsBase.cs:
|
|
* Platform/X11/GlxHelper.cs:
|
|
* Graphics/OpenGL/GLHelper.cs:
|
|
* Platform/X11/X11GLContext.cs: Modified BindingsBase to define
|
|
abstract GetAddress method (reason: removes OpenTK.Graphics-specific
|
|
code from BindingsBase and allows it to be used in different
|
|
bindings).
|
|
Implemented GraphicsBindingsBase and modified the OpenGL and OpenGL|ES
|
|
bindings to use this.
|
|
Modified the GLX bindings to inherit from BindingsBase (reason:
|
|
reduces code duplication for extension loading).
|
|
|
|
2009-10-06 the_fiddler
|
|
|
|
* Source/OpenTK/Math/Vector2.cs, Source/OpenTK/Math/Vector2d.cs, Source/OpenTK/Math/Vector3.cs, Source/OpenTK/Math/Vector3d.cs, Source/OpenTK/Math/Vector4.cs, Source/OpenTK/Math/Vector4d.cs: Replaced calls to obsolete methods.
|
|
Fixed parameters in double versions of BaryCentric() (should be double instead of float).
|
|
* Source/OpenTK/Math/Vector2.cs, Source/OpenTK/Math/Vector2d.cs, Source/OpenTK/Math/Vector3.cs, Source/OpenTK/Math/Vector3d.cs, Source/OpenTK/Math/Vector4.cs, Source/OpenTK/Math/Vector4d.cs: Obsoleted Scale() instance method (reason: redundant. Mult()/Multiply() instance/static methods can be used to achieve the same effect).
|
|
* Source/OpenTK/Math/Vector2.cs, Source/OpenTK/Math/Vector2d.cs, Source/OpenTK/Math/Vector3.cs, Source/OpenTK/Math/Vector3d.cs, Source/OpenTK/Math/Vector4.cs, Source/OpenTK/Math/Vector4d.cs: Added vector overloads to Multiply and Divide methods.
|
|
Renamed Sub to Subtract, Mult to Multiply and Div to Divide (reason: conform with the class library design guidelines).
|
|
Obsoleted instance Add, Sub, Mult and Div methods in favor of static ones (reason: reduce API bloat, they are completely redudant).
|
|
Improved documentation for new methods.
|
|
* Source/OpenTK/Math/Vector2.cs, Source/OpenTK/Math/Vector4.cs: Fixed formatting.
|
|
* Source/OpenTK/Properties/AssemblyInfo.cs: Bumped version number.
|
|
* Source/OpenTK/Graphics/OpenGL/GLHelper.cs: Added GetActiveAttrib, GetActiveUniform, GetActiveUniformName and GetActiveUniformBlockName overloads that return strings. Fixes issue [#1213]: "[GL] let GetUniformName() return String".
|
|
* Source/OpenTK/Graphics/OpenGL/GLHelper.cs: Added ClearColor(Color4) overload. Fixes issue [#1207]: "[GL] add Color4 argument overload for ClearColor".
|
|
|
|
2009-09-26 the_fiddler
|
|
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs: Raise KeyPress events (handle WindowsMessage.CHAR message).
|
|
* Source/OpenTK/KeyPressEventArgs.cs: Made KeyChar property setter internal instead of private. Useful for reusing KeyPressEventArgs structures (instead of allocating a new one on each and every character event).
|
|
* Source/OpenTK/IGameWindow.cs: Marked IGameWindow as public.
|
|
|
|
2009-09-25 the_fiddler
|
|
|
|
* Source/OpenTK/Platform/X11/X11GraphicsMode.cs: * X11GraphicsMode.cs: Protect the mode queries with XLockDisplay()/XUnlockDisplay().
|
|
|
|
2009-09-19 the_fiddler
|
|
|
|
* Source/OpenTK/GameWindow.cs: Ensure the GameWindow is visible when the Run() method is called.
|
|
* Source/OpenTK/Platform/Windows/API.cs, Source/OpenTK/Platform/Windows/WinGLNative.cs: Renamed IsWindowVisisble to the correct IsWindowVisible.
|
|
|
|
2009-09-18 the_fiddler
|
|
|
|
* Source/GLControl/GLControl.cs: Setting VSync mode should not force control creation. Fixes issue [#1071]: "Not firing Load event for GLControl."
|
|
|
|
2009-09-13 the_fiddler
|
|
|
|
* Source/OpenTK/Platform/X11/X11KeyMap.cs: * X11KeyMap.cs: Removed dependency on System.Windows.Forms.
|
|
|
|
2009-09-10 the_fiddler
|
|
|
|
* Source/GLControl/GLControl.cs: * GLControl.cs: Added a public getter for the IWindowInfo of the GLControl.
|
|
|
|
2009-09-08 the_fiddler
|
|
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs: Removed obsolete comment.
|
|
* Source/OpenTK/Platform/Windows/WinGraphicsMode.cs: Remove System.Windows.Forms.Control dependency in favor of OpenTK.NativeWindow.
|
|
* Source/OpenTK/Platform/Windows/WinGLNative.cs: Construct windows invisible by default. Use 'Visible = true' or 'GameWindow.Run' to display them.
|
|
* Source/OpenTK/Platform/Windows/API.cs: Added IsWindowVisible method.
|
|
|
|
2009-09-07 the_fiddler
|
|
|
|
* Source/Examples/OpenGL/EXT/GeometryShaderAdvanced.cs: Fixed several code instances that relies on C# 3.0 features.
|
|
* Source/Bind/Specifications/GL2/enumext.spec, Source/Bind/Specifications/GL2/gloverrides.xml, Source/OpenTK/Graphics/OpenGL/GL.cs, Source/OpenTK/Graphics/OpenGL/GLCore.cs, Source/OpenTK/Graphics/OpenGL/GLDelegates.cs, Source/OpenTK/Graphics/OpenGL/GLEnums.cs: Updated tokens for ARB_depth_clamp, ARB_vertex_array_bgra, ARB_seamless_cube_map, ARB_provoking_vertex, ARB_draw_elements_base_vertex which where promoted in version 3.2. Fixes issue [#1146]: "[GL3.2] Multiple (minor) corrections".
|
|
* Source/Bind/Specifications/GL2/enumext.spec, Source/OpenTK/Graphics/OpenGL/GLEnums.cs: Updated tokens for ARB_geometry_shader4 (promoted in Version 3.2). Fixes issue [#588]: "ARB_geometry_shader4".
|
|
* Source/Bind/Specifications/GL2/enumext.spec, Source/Bind/Specifications/GL2/gloverrides.xml, Source/OpenTK/Graphics/OpenGL/GL.cs, Source/OpenTK/Graphics/OpenGL/GLCore.cs, Source/OpenTK/Graphics/OpenGL/GLDelegates.cs, Source/OpenTK/Graphics/OpenGL/GLEnums.cs: Updated tokens for ARB_texture_multisample (promoted in Version 3.2). Fixes issue [#1151]: "ARB_texture_multisample".
|
|
* Source/Bind/GL2/Generator.cs: Report an error if a constant does not contain either '=' or 'use' in its definition.
|
|
|
|
|
|
----------------------------
|
|
OpenTK 0.9.9-2 -> 0.9.9-2b
|
|
----------------------------
|
|
|
|
+ OpenTK
|
|
+ Added AllowPartialTrustedCallers attribute.
|
|
|
|
|
|
---------------------------
|
|
OpenTK 0.9.9-1 -> 0.9.9-2
|
|
---------------------------
|
|
|
|
+ General
|
|
+ Changed project layout.
|
|
+ Bind project now relies on C# 3.0 / .Net 3.5.
|
|
+ Removed OpenTK.Utilities project.
|
|
+ Added OpenTK.Compatibility project.
|
|
+ Added OpenTK.GLControl project.
|
|
+ Improved build system.
|
|
+ OpenTK can now be strongly-named.
|
|
|
|
+ Generator
|
|
+ Bind
|
|
+ Cleaned up using directives and removed unnecessary qualifiers.
|
|
+ Added support for specs in XML form.
|
|
+ Added OpenGL|ES and OpenCL specs in XML form.
|
|
+ Fixed handling of output paths in the ES generator.
|
|
+ Fixed several instances that ignored the generator settings.
|
|
+ Improved handling of pointer/reference overloads.
|
|
+ Ensured that methods are written in lexicographic order.
|
|
+ Converter
|
|
+ Added support for OpenGL|ES extensions.
|
|
+ Fixed several OpenGL|ES extensions from Nvidia that did not list parameter names.
|
|
+ Fixed several other corner cases in the conversion process.
|
|
|
|
+ OpenTK
|
|
+ Added support for signed assemblies.
|
|
+ Fixed all documentation warnings.
|
|
+ Moved DisplayDevice and DisplayResolution classes to the root OpenTK namespace.
|
|
+ Audio
|
|
+ Moved OpenAL flat API to the OpenTK.Audio.OpenAL namespace.
|
|
+ Removed SoundData class and OpenAL overloads using this class.
|
|
+ Build
|
|
+ Prebuild.exe and the Prebuild.xml are now distributed as an embedded resources.
|
|
+ Improved help and usage instructions.
|
|
+ Added support for strong names.
|
|
+ Removed obsolete build options and targets (nant, monodevelop 1, sharpdevelop 1).
|
|
+ Split OpenTK into three distinct solution files: OpenTK, Generator and QuickStart.
|
|
+ Compute
|
|
+ Fixed a TypeLoadException issue in the various handle wrappers that could result prevent OpenTK from loading.
|
|
+ OpenCL
|
|
+ Moved OpenCL flat API to the OpenTK.Compute.OpenCL namespace.
|
|
+ Regenerated the OpenCL using Bind.
|
|
+ Updated to the latest version of the specs.
|
|
+ Added missing 's' to 'CL.GetPlatformIDs'.
|
|
+ NativeWindow
|
|
+ New NativeWindow implementation of INativeWindow members.
|
|
+ Connected several internal INativeWindow events to the public NativeWindow interface.
|
|
+ GameWindow
|
|
+ Modified to inherit from NativeWindow.
|
|
+ Improved event handling.
|
|
+ Removed ExitAsync method. GameWindow must be closed by the thread it originated from.
|
|
+ Graphics
|
|
+ GraphicsContext
|
|
+ Refactored internal IGraphicsContext implementations to reduce code duplication.
|
|
+ GraphicsContext no longer accesses OpenGL or OpenGL|ES bindings directly and can work independently.
|
|
+ Added support for EGL context implementations.
|
|
+ Added GraphicsContextFlags.Embedded to GraphicsContext constructor, to allow creation of EGL contexts. Tested on the OpenGL|ES emulator from AMD.
|
|
+ Fixed NullReferenceException in GraphicsContext.CreateDummyContext.
|
|
+ Fixed potential KeyNotFoundException on X11.
|
|
+ OpenGL
|
|
+ Moved OpenGL flat API to the OpenTK.Graphics.OpenGL namespace.
|
|
+ Replaced all occurences of Version12 and Version12Deprecated enums with specific enums.
|
|
+ Cleaned up tokens for the ARB_imaging subset: EXT_convolution, EXT_histogram and SGI_color_table.
|
|
+ Added missing ColorAttachmenti tokens to ReadBufferMode.
|
|
+ Reduced duplication and improved initialization and extension loading code for OpenGL and OpenGL|ES.
|
|
+ Removed methods that rely on OpenGL version checks, such as GL.SupportsExtension(). Programs should use one of the documented ways of checking for OpenGL extension support (GL.GetString(StringName.Extensions) on versions <= 2.1 and GL.GetString(StringName.Extensions, n) on versions >= 3.0).
|
|
+ Removed GL.Load() and GL.LoadDelegate() methods.
|
|
+ Removed unnecessary [In] and [Out] attributes.
|
|
+ OpenGL|ES
|
|
+ Added support for OpenGL|ES extensions.
|
|
+ Regenerated the bindings using the latest version of Bind.
|
|
+ Removed unnecessary [In] and [Out] attributes.
|
|
+ Input
|
|
+ Removed deprecated code.
|
|
+ Added more stubs for the static input classes.
|
|
+ Math
|
|
+ Quaternions can now be scaled by scalars.
|
|
+ Cleaned up parameter names and ensured they match the documentation.
|
|
+ Platform
|
|
+ Removed Utiilties.CreateWindowInfo method. Please use one of the platform-specific Utilities.Create[X11|Windows|Carbon|Dummy]WindowInfo methods.
|
|
+ Removed all deprecated methods from the Utilities class.
|
|
+ X11
|
|
+ Improved handling of invalid XRandR values reported by some drivers. This allows OpenTK to run on Xming.
|
|
|
|
+ OpenTK.Compatibility
|
|
+ Added support for Tao.OpenGl, Tao.OpenAl and Tao.Platform.Windows.SimpleOpenGlControl (through OpenTK.GLControl).
|
|
+ Added old math API from OpenTK.Math.
|
|
+ Added old OpenGL API from OpenTK.Graphics.
|
|
+ Added old OpenAL API from OpenTK.Audio.
|
|
+ Added OpenTK.Graphics.TextPrinter.
|
|
+ Moved GDI+ bindings to this project.
|
|
+ TextPrinter
|
|
+ Reset TextureGen, TextureEnvMode and lighting before rendering text.
|
|
|
|
+ OpenTK.GLControl
|
|
+ Moved to different project, to reduce reliance of core OpenTK on Windows.Forms.
|
|
+ Moved Windows.Forms-specific code from OpenTK.Platform.Utilities to OpenTK.GLControl.
|
|
|
|
+ OpenTK.Utilities
|
|
+ Merged project into OpenTK.Compatibility.
|
|
|
|
|
|
-------------------------
|
|
OpenTK 0.9.9 -> 0.9.9-1
|
|
-------------------------
|
|
+ OpenTK
|
|
+ Enabled documentation generation in debug builds.
|
|
+ Added several missing XML comments to OpenTK.Input, OpenTK.Audio, OpenTK.Math and other namespaces.
|
|
+ Audio
|
|
+ AL.Lib is now internal, not public.
|
|
+ Compute
|
|
+ Bitfields are now mapped to 'long' instead of 'int'.
|
|
+ GLControl
|
|
+ Removed unused code.
|
|
+ Input
|
|
+ Added Mouse and Keyboard stubs for the new input API.
|
|
+ Added common alternative names to OpenTK.Input.Key (e.g. LControl, RControl, ...)
|
|
+ Removed None and MaxKeys tokens from OpenTK.Input.Key. Adde Unknown token.
|
|
+ Math
|
|
+ Namespace OpenTK.Math no longer exists. Math functions are now placed directly inside the OpenTK namespace.
|
|
+ Matrix4.Frustum was obsoleted in favor of Matrix4.CreatePerspectiveOffCenter.
|
|
+ Matrix4.Perspective was obsoleted in favor of Matrix4.CreatePerspectiveFieldOfView.
|
|
|
|
-------------------------
|
|
OpenTK 0.9.8-1 -> 0.9.9
|
|
-------------------------
|
|
+ OpenTK
|
|
+ Compute
|
|
+ Initial support for the OpenCL flat API.
|
|
+ Input
|
|
+ Keyboard/Mouse/JoystickDevice are now marked as obsolete.
|
|
+ GameWindow
|
|
+ New properties: Bounds, Size, Location, ClientRectangle, ClientSize, Icon.
|
|
+ Size should now contain the correct value inside the GameWindow constructor.
|
|
+ The GameWindow should now start at the center of the specified DisplayDevice (Windows-only at the moment).
|
|
+ GameWindow no longer relies on Windows.Forms.
|
|
+ Graphics
|
|
+ Glu is now marked as obsolete.
|
|
+ Support for multisampled contexts (Windows-only at the moment).
|
|
|
|
---------------------------
|
|
OpenTK 0.9.8-1 -> 0.9.8-2
|
|
---------------------------
|
|
+ Bind
|
|
+ Fixed handling of string arrays.
|
|
|
|
+ OpenTK
|
|
+ Graphics
|
|
+ Fixed wrappers for functions taking string arrays: TranformFeedbackVaryings, GetUniformIndices, GetShaderSource.
|
|
+ Platform
|
|
+ X11XrandrDisplayDevice now ignores invalid resolutions returned by XRandR.
|
|
|
|
+ OpenTK.Utilities
|
|
+ TextPrinter
|
|
+ Fixed handling of text color parameter in TextPrinter.Print().
|
|
|
|
-------------------------
|
|
OpenTK 0.9.8 -> 0.9.8-1
|
|
-------------------------
|
|
+ Bind
|
|
+ Fixed wrappers for methods ending in "nv" without being "NV" extensions (e.g. Booleanv).
|
|
|
|
+ OpenTK
|
|
+ Graphics
|
|
+ Fixed wrappers for methods ending in "nv" without being "NV" extensions (e.g. GetBooleanv).
|
|
+ Math
|
|
+ Improved performance for Matrix4/Matrix4d.Mult().
|
|
|
|
+ OpenTK.Utilities
|
|
+ TextPrinter
|
|
+ Fixed corruption after calling TextPrinter.Clear()
|
|
|
|
---------------------
|
|
OpenTK 0.9.7 -> 0.9.8
|
|
---------------------
|
|
+ Bind
|
|
+ Merged 3.1 specs.
|
|
+ Function overrides are now specified in 'gloverrides.xml' instead of gl.spec. Merging updated specs should now be much easier.
|
|
+ Bindings are now generated in alphabetical order. This makes side-by-side comparisons easier whenever the generator or the specs are updated.
|
|
|
|
+ OpenTK
|
|
+ Audio
|
|
+ Fixed Alc.CaptureSamples signature and added convenience overloads.
|
|
+ Graphics
|
|
+ Full OpenGL 3.1 support.
|
|
+ All instances of Version* enums have now been replaced. Only a few Version12Deprecated enums remain, pertaining to the ARB_imaging subset.
|
|
+ Debug builds now throw an exception whenever an OpenGL error is encountered. Simplifies debugging.
|
|
+ GraphicsContext.CreateDummyContext() no longer causes a NullReferenceException.
|
|
+ Several new helpers for getting matrices, vectors or setting the viewport.
|
|
+ Input
|
|
+ Keyboard repeat is now turned off on X11.
|
|
+ Mouse deltas are now reported correctly during mouse movements..
|
|
+ Platform
|
|
+ Device contexts are no longer leaked on Windows. This significantly improves stability of long-running processes and processes with multiple OpenGL contexts.
|
|
+ Internal improvements to DummyGLContext.
|
|
+ Internal improvements to IPlatformFactory.
|
|
|
|
+ OpenTK.Utilities
|
|
+ TextPrinter
|
|
+ Up to 2x better performance with TextPrinterOptions.NoCache.
|
|
+ Up to 20x better performance with TextPrinterOptions.Default.
|
|
+ Specifying text location now works on Mono. Text width and height is still broken (Mono GDI+ bug).
|
|
+ Replaced matrix stack with custom implementation for improved compatibility with buggy drivers or newer OpenGL versions.
|
|
+ GL1TextOutputProvider now resets / restores the TextureMatrix.
|
|
|
|
+ Examples
|
|
+ New sample browser that includes documentation and source code (in progress).
|
|
+ Removed the console window. Debug messages are now shown inside the sample browser.
|
|
|
|
---------------------
|
|
OpenTK 0.9.6 -> 0.9.7
|
|
---------------------
|
|
+ Bind
|
|
+ Fixed several suffixes that were incorrectly trimmed ("Instanced", "Indexed", "Varyings").
|
|
+ CLS-compliant overloads now contain debugging stubs.
|
|
|
|
+ OpenTK
|
|
+ Graphics
|
|
* Initial support for OpenGL 3.1. Some functions and tokens aren't yet available in the specs - these will be added in due time.
|
|
* Improved type-safety in the OpenGL 3.0 bindings.
|
|
+ Automatic error checks now display stacktraces.
|
|
|
|
---------------------
|
|
OpenTK 0.9.5 -> 0.9.6
|
|
---------------------
|
|
+ Bind
|
|
+ Improved heuristics for inline OpenGL documentation.
|
|
* Void pointers are now mapped to generic arrays (T[]) or references (ref T), where T : struct. Work in progress (see http://www.opentk.com/node/703).
|
|
+ Generated bindings now automatically check for OpenGL errors, when compiled in debug mode.
|
|
+ Disabled all generator modes except for GL.
|
|
|
|
+ OpenTK
|
|
+ Fixed all build warnings (apart from missing documentation comments).
|
|
+ Graphics
|
|
+ Improved inline documentation.
|
|
+ Added automatic OpenGL error checking in debug builds.
|
|
+ Replaced object overloads with generics for improved type-safety and performance.
|
|
+ Updated to version 48 specs (fixed some problems with the transform feedback extension).
|
|
+ Platform
|
|
+ Fixed GLX context attributes in the GLX_ARB_create_context code path.
|
|
+ Revert to the legacy GLX code path for pre-GL3.0 contexts (AMD drivers do not support vsync on GL3.0+).
|
|
+ Audio
|
|
+ AudioContext now initializes the maximum number of effect slots supported by the drivers.
|
|
+ Added IsSynchronized property.
|
|
|
|
+ Examples
|
|
+ New OpenAL example (EFX reverb).
|
|
|
|
---------------------
|
|
OpenTK 0.9.4 -> 0.9.5
|
|
---------------------
|
|
|
|
+ Bind
|
|
+ Added support for inline OpenGL documentation.
|
|
+ Fixed mapping between signed / unsigned wrappers -> signed / unsigned entry points (casts should no longer be necessary).
|
|
|
|
+ Build
|
|
+ Added System.Xml reference to Bind project.
|
|
+ Added new documentation files to Bind project.
|
|
|
|
+ OpenTK
|
|
+ GameWindow / GLControl
|
|
+ Added new constructors to select the desired GraphicsContext version and flags.
|
|
+ Graphics
|
|
+ The GL class now contains inline documentation.
|
|
+ It is now possible to specify desired version and flags for the OpenGL context (forward-compatible, debug).
|
|
+ Input
|
|
+ It is now possible to use devices without axes and/or buttons (e.g. keyboard extensions, tablets).
|
|
+ Platform
|
|
+ X11 platform driver now uses glXChooseFBConfig for visual selection, if available.
|
|
+ X11 platform driver now supports GLX_ARB_create_context (OpenGL 3.0).
|
|
|
|
+ Examples
|
|
+ Extension test now requests an OpenGL 3.0 context.
|
|
+ Extension test now shows the parameters of each OpenTK.Graphics.GL function.
|
|
|
|
|
|
|
|
---------------------
|
|
OpenTK 0.9.3 -> 0.9.4
|
|
---------------------
|
|
|
|
+ Bind
|
|
+ Emits metadata for GL wrappers: entry point, OpenGL version and extension.
|
|
+ Adds license information to the generated bindings.
|
|
|
|
+ Build
|
|
+ Promps for input when no arguments are specified. This means you can now build or create the OpenTK solution without opening a terminal.
|
|
|
|
+ OpenTK
|
|
+ GameWindow
|
|
+ Added support for JoystickDevices.
|
|
+ Input
|
|
+ Added JoystickDevice and IJoystickDriver.
|
|
+ Platform
|
|
* Implemented joystick support (Windows and Linux only at the moment).
|
|
+ Graphics
|
|
+ Added typesafe support for GL3 functions and enums: ARB_framebuffer_object, ARB_color_buffer_float, ARB_texture_rg, ARB_texture_ compression_rgtc, ARB_texture_float, EXT_texture_integer, EXT_texture_array
|
|
+ Added support for the complete GL3 spec.
|
|
* Added support for creating GL3.0-level contexts (Windows only at the moment).
|
|
+ Added metadata to the GL wrappers.
|
|
+ Implemented GL.SupportsFunction(MethodInfo).
|
|
|
|
+ Utilities
|
|
+ Fixed GL1.1 fallback when GL.BlendColor is not supported.
|
|
|
|
+ Examples
|
|
+ New Extensions viewer that displays the new GL metadata (needs .Net or Mono 2.4+ for full compatibility, but will run on older Mono versions).
|
|
+ Moved extensions viewer to the Tests category.
|
|
|
|
+ General
|
|
+ Set mime-type and eol-style properties to the .spec and .tm files.
|
|
|
|
|
|
|
|
---------------------
|
|
OpenTK 0.9.2 -> 0.9.3
|
|
---------------------
|
|
|
|
+ OpenTK
|
|
+ GameWindow
|
|
+ Added cancelable Closing event.
|
|
+ Exit() method is now thread-safe.
|
|
+ Removed ExitAsync() method - use Exit() instead.
|
|
+ Graphics
|
|
+ Fixed version strings in GL.SupportsExtension().
|
|
+ Input
|
|
+ Added support for the MouseDevice.Move and .WheelChanged events and improved MouseDevice interface (Issue: "Fix MouseDevice.Move", http://www.opentk.com/node/652).
|
|
+ Math
|
|
+ Fixed infinite loop in quaternion constructors (Issue: "Quaternion bug", http://www.opentk.com/node/663)
|
|
+ Platform
|
|
+ MacOS support.
|
|
+ Suppressed build warnings for unused methods and fields in the platform bindings.
|
|
|
|
+ Utilities
|
|
+ Fixed TextPrinter bug with colors in high quality (Issue: "TextPrinter (TextQuality.High) failure (with patch to fix)", http://www.opentk.com/node/660)
|
|
|
|
+ Examples
|
|
+ Fixed the JuliaSetFractal and Framebuffer Object examples when the video cards don't support GLSL and FBOs, respectively.
|
|
|
|
+ General
|
|
+ Set mime-type and eol-style properties for .cs and .txt files.
|
|
+ Replaced stray tabs with spaces in several files.
|
|
|
|
|
|
|
|
---------------------
|
|
OpenTK 0.9.1 -> 0.9.2
|
|
---------------------
|
|
+ Bind
|
|
+ Added the Half type to the typemaps.
|
|
|
|
+ OpenTK
|
|
+ Platform
|
|
+ Added GdiPlus bindings.
|
|
+ Fixed a bug where the KeypardEnter key was reported as Enter on X11.
|
|
+ Changed the Time X11 struct from int to IntPtr.
|
|
+ Improved GLControl implementations.
|
|
+ Graphics
|
|
+ Added Color4 struct that can hold floating-point ARGB colors.
|
|
+ Added several new overloads to the GL class. Most deal with OpenTK and System.Drawing.Color interoperation.
|
|
+ Added support for the Half type.
|
|
+ Math
|
|
+ Added half and double precision structures.
|
|
+ Added missing ref overloads.
|
|
+ All structs now implement the IEquatable interface.
|
|
+ Added the SerializableAttribute to the Quaternion and Quaterniond structs.
|
|
+ Fixed Quaternion/Quaterniond.ToAxisAngle with an angle of 0 degrees.
|
|
+ Quaternion/Quaterniond now follow the recommended class library naming conventions.
|
|
+ General
|
|
+ Fixed build warnings.
|
|
+ Eliminated per-frame memory allocations in release builds.
|
|
|
|
+ Utilities
|
|
+ Fonts
|
|
+ Updated the layout code to use the new GdiPlus bindings.
|
|
+ Added support for near-, far- and center-aligned text.
|
|
+ Added support for right-to-left and vertical text (not 100% complete).
|
|
+ Added support for subpixel antialiasing (requires GL 1.2 or higher).
|
|
|
|
+ Examples
|
|
+ Improved ExampleLauncher behavior on recent Mono/Linux releases.
|
|
+ Switched to the new TextPrinter implementation.
|
|
+ Changed background color from SteelBlue to MidnightBlue.
|
|
|
|
|
|
|
|
---------------------
|
|
OpenTK 0.9.0 -> 0.9.1
|
|
---------------------
|
|
+ Bind
|
|
+ Corrected Glu.NewTess and Glu.DeleteTess (were NewTes and DeleteTes respectively).
|
|
+ Corrected typemaping for NurbsObj, QuadricObj, TesselatorObj and FunctionPointer.
|
|
+ Fixed a bug that resulted in missing overloads in functions with both pointers and generic parameters (like Glu.TessVertex).
|
|
+ Worked around an Intellisense bug, where some overloads might not be reported if the pointer overload was the first one encountered.
|
|
+ Fixed naming of 1D, 2D, 3D etc (e.g. Texture2D, which used to be Texture2d).
|
|
+ Corrected GL.ReadPixels (was GL.ReadPixel).
|
|
|
|
+ OpenTK
|
|
+ Graphics
|
|
+ Fixed Glu tessellation.
|
|
+ Refactored/updated DisplayMode and ColorMode. Added docs, fixed a few problematic corner cases. Width/Height are no longer available in DisplayMode.
|
|
+ Added DisplayDevice class, to enumerate available display devices (i.e. monitors) and switch resolutions.
|
|
+ Added DisplayResolution class, to hold resolution information.
|
|
+ Audio
|
|
+ Added AudioContext class.
|
|
+ Added AudioReader class.
|
|
+ GameWindow
|
|
+ Implemented WindowBorder property.
|
|
+ Implemented WindowState property.
|
|
+ Input
|
|
+ Fixed MouseDevice events on Linux.
|
|
+ Fixed MouseDevice deltas.
|
|
+ Platform.X11
|
|
+ Simplified input handling.
|
|
+ Fonts
|
|
+ Moved to OpenTK.Utilities.
|
|
|
|
+ OpenTK.Utilities
|
|
+ Fonts
|
|
+ Moved to OpenTK.Graphics from OpenTK.Fonts.
|
|
+ Implemented immediate text printing (without caching).
|
|
+ Improved width calculation for space characters.
|
|
+ Fixed width calucalated by TextureFont.MeasureString.
|
|
|
|
+ Examples
|
|
+ Added GluTessellator example.
|
|
+ Added Inertia's Julia Set GLSL example.
|
|
+ Added Inertia's OpenAL Playback example.
|
|
+ Made several tests public (Input Logger, Resolutions, GameWindow states).
|
|
|
|
|
|
|
|
-----------------------
|
|
OpenTK 0.3.13 -> 0.9.0
|
|
-----------------------
|
|
Minor version changed to reflect current progress.
|
|
|
|
+ Bind
|
|
+ Improved token matching rule. More tokens will reference actual enums now, instead of referencing Enums.All.
|
|
+ Initial work on duplicate enum removal (still disabled).
|
|
+ 'Public' specifier not specified on the generated classes anymore. This is now controlled in the *Helper.cs files.
|
|
+ Fixed a couple of possible NRE exceptions.
|
|
|
|
+ Build
|
|
+ Now generates xml documentation on release builds.
|
|
|
|
+ OpenTK
|
|
+ Fonts
|
|
+ Fixed a bug in the VboTextPrinter implementation (still disabled).
|
|
+ OpenAL
|
|
+ AL, Alc, Alu and Alut bindings.
|
|
+ Inline documentation.
|
|
+ OpenGL
|
|
+ Version12-Version21 enums removed in favour of specific tokens.
|
|
+ A few new function overloads.
|
|
+ Platform
|
|
+ Added several new functions to the Windows and X11 namespaces (mouse handling, coordinate transformations, current context query)
|
|
+ Initial support for garbage collection of OpenGL resources (disabled).
|
|
+ Support for Win 9x and 2000 platforms through new WMInput InputDriver implementation.
|
|
+ Fixes to WinRawInput driver (disabled due to memory leaks).
|
|
+ GameWindow
|
|
+ Now uses GLContext instead of Win/X11GLContext.
|
|
+ Math
|
|
+ Fix to Vector4.Perspective()
|
|
|
|
+ Examples
|
|
+ Hidden examples now displayed on Ctrl+F1.
|
|
+ Bugfixes to GLSL and VBO examples.
|
|
+ Input logger works again (hidden example).
|
|
|
|
|
|
|
|
-----------------------
|
|
OpenTK 0.3.12 -> 0.3.13
|
|
-----------------------
|
|
|
|
+ Bind
|
|
+ New transformation to OpenGL enums follows .Net naming conventions (PascalCase, no_underscores).
|
|
+ Void* parameters are turned to IntPtr, to improve interop with .Net BCL methods (e.g. BitmapData.Scan0).
|
|
+ Now generates only one ref/array/pointer overload for each function, not all possible permutations. Brings Glu down to ~40KB of code (was ~3MB before). Improves compilation times.
|
|
+ Improved layout of generated code. Removed some generated local variables (improves speed).
|
|
|
|
+ Build
|
|
+ Now copies example data to output directory.
|
|
|
|
+ OpenTK
|
|
+ Platform
|
|
+ Improved [..]GLNative shutdown sequence for all platforms. Fixes shutdown crash under Linux.
|
|
+ Removed X11GLControl, WinGLControl. The platform specific code is handled in the WindowInfo and GLContext classes.
|
|
+ Fixed issue with flickering GLControls.
|
|
* Added VSync support to Windows. Linux will obtain this on next release.
|
|
+ GameWindow
|
|
+ Improved timing precision.
|
|
+ More detailed timing information available.
|
|
+ Can now set target UpdateFrame and RenderFrame periods during runtime.
|
|
+ VSync support.
|
|
+ Improved GameWindow.Exit() handling.
|
|
+ Removed obsolete GameWindow.Create and GameWindow.Destroy events.
|
|
+ Math
|
|
+ Andy Gill implemented Vector2/3/4, Matrix4 and Quaternion methods for OpenTK.
|
|
+ Added Box2 struct which defines a rectangular region. Used in OpenTK.Fonts (see below).
|
|
- Removed (float*) and (IntPtr) cast operators from Vector234. Added this[] operator.
|
|
+ Fonts
|
|
+ High quality Texture fonts on all supported platforms (TextureFont class).
|
|
+ TextPrinter to draw text on all supported platform (TextPrinter class).
|
|
+ OpenGL
|
|
+ .Net naming conventions.
|
|
+ Many, many more function overloads.
|
|
+ Smaller and faster.
|
|
+ Even better startup performance.
|
|
|
|
+ Examples
|
|
+ Improved example layout. Now every example contains a Main() method, exactly like it would be if it wasn't launched by the ExampleLauncher.
|
|
+ Added ExampleAttribute.
|
|
+ Added Fonts, Textures and Text examples.
|
|
+ Improved GLSL example (now loads the shader from disk, uses VBO).
|
|
- Disabled Vertex Array and Lighting examples, as they were seriously broken.
|
|
+ Background changed to Color.SteelBlue for all examples.
|
|
+ Kostas Soulakellis created a logo for the OpenTK library. A scaled-down image of the first version is used in the Textures example.
|
|
|
|
|
|
|
|
-----------------------
|
|
OpenTK 0.3.11 -> 0.3.12
|
|
-----------------------
|
|
|
|
+ Bind
|
|
+ Minor output layout updates.
|
|
|
|
+ OpenTK
|
|
+ Platform
|
|
+ Renamed Windows.API to Windows.Functions, to match X11.Functions.
|
|
+ Added many new functions to both Windows and X11 bindings.
|
|
+ Improved inline documentation to Windows and X11 bindings.
|
|
+ GameWindow
|
|
+ Added timing logic to the Run() function. The target UpdateFrame and RenderFrame rates can be set independently. The GameWindow will try to maintain the UpdateFrame rate, dropping RenderFrames if necessary.
|
|
+ GameWindow.Run() now releases unused CPU time.
|
|
+ Improved event firing. Resize event called only once now. No need for users to call base.OnXYZ functions.
|
|
+ Corrected an issue where GameWindow could could fail to shutdown properly under Windows, due to WinRawInput driver eating up the CLOSE event.
|
|
+ GameWindow exposes only one Mouse and Keyboard now. Multiple keyboard/mouse support is provided through the InputDriver, but is still very much a WIP, so better to use the default Keyboard and Mouse devices reported by GameWindow.
|
|
+ Added the GameWindow.Title property, which can be used to retrieve or set the GameWindow caption.
|
|
+ Added new constructors and CreateWindow overloads.
|
|
+ Greatly improved documentation.
|
|
+ Internal layout changes, and general performance optimizations.
|
|
+ Input
|
|
+ Mouse input support through WinRawMouse and X11Mouse drivers.
|
|
- Mouse.Wheel and Mouse.WheelDelta are broken on both platforms.
|
|
- WinRawMouse is very resource intensive. Expect great performance improvements in the next releases.
|
|
+ Added some missing Keyboard keys.
|
|
+ Math
|
|
+ Added Vector2, Vector3 and Vector4 structs, and basic vector math functions. You can pass these structs directly to functions expecting float*, by casting to (float*).
|
|
|
|
+ Examples
|
|
+ Merged T02: Resizable Window example into T01: Simple Window.
|
|
+ Added T02: Vertex Array example.
|
|
+ Added T04: Lighting example.
|
|
+ Improved keyboard handling.
|
|
+ Improved documentation, especially T01: Simple Window.
|
|
+ Slightly cleaned up T10: GLSL Example.
|
|
+ Examples now use many of the new GameWindow capabilities. Check out T01.
|
|
+ Added Shape, IsoSphere, and Cube shapes. OpenTK.Example.Shape for more.
|
|
|
|
|
|
|
|
-----------------------
|
|
OpenTK 0.3.10 -> 0.3.11
|
|
-----------------------
|
|
|
|
+ Bind
|
|
+ Preliminary support for GLU and GLX.
|
|
+ Improved generator speed. GLU generation down to 5 seconds (from 6 minutes).
|
|
+ Enhanced overload trimming using Regexes. All endings should be handled correctly now.
|
|
|
|
+ OpenTK
|
|
+ Platform
|
|
+ Replaced System.Windows.Forms.Message with OpenTK.Platform.Windows.MSG. Corrects deadlocks under 32-bit windows.
|
|
+ Added WindowMessage enum from Mono's bindings.
|
|
+ GameWindow, GLControl and GLContext
|
|
+ Improved shutdown sequence (finalizers only on classes that actually need them).
|
|
+ Improved stability (exceptions no longer thrown in finalizers).
|
|
+ Corrected deadlock under 32-bit Windows (see above).
|
|
+ Added DummyGLControl and DummyGLContext, used in design mode. Improves design speed and resolves Visual Studio crashes.
|
|
+ GameWindow Create event marked as obsolete. Use the Load event instead.
|
|
+ Input
|
|
+ Correctly implemented disposable pattern.
|
|
+ OpenGL
|
|
+ GL.ClearColor() now accepts a System.Drawing.Color
|
|
+ All function endings are trimmed now (see Bind changelog).
|
|
+ GCHandles where not freed (bug introduced in 0.3.10).
|
|
+ Added preliminary GLU bindings. Tesselation not working yet.
|
|
|
|
+ Examples
|
|
+ Improved ExampleLauncer behavior. Examples are now launched in the main ExampleLauncher thread, and the ExampleLauncher becomes invisible whenever and example is active.
|
|
+ Improved example names inside the ExampleLauncher. Renamed some examples to better reflect their contents.
|
|
+ Added two new tutorials: 'T01: Simple Window' and 'T02: Resizable Window'
|
|
+ Updated the DrawCube() immediate mode functions to use System.Drawing.Colors
|
|
+ Resolved issue where 'T10: GLSL Cube' example failed with an NRE when compiled with Mono 1.2.x
|
|
+ Added 'W03: Extensions' example.
|
|
+ Added 'T04: Lit Cube' example (still needs work).
|
|
|
|
|
|
|
|
-----------------------
|
|
OpenTK 0.3.9 -> 0.3.10
|
|
-----------------------
|
|
|
|
+ Bind
|
|
+ Added Generator for WGL.
|
|
+ Corrected bug where trimmed overloads (like Color3) did not call the correct delegates internally (Color3ub called glColor3b)
|
|
+ Improved configuration capabilities - can now change the function prefix/postfix, and more.
|
|
+ Improved commandline argument handling.
|
|
|
|
+ OpenTK
|
|
+ Platform
|
|
+ Added complete WGL bindings (Wgl.cs, WglCore.cs, WglDelegates.cs, WglEnums.cs)
|
|
* Should request up-to-date specs from Khronos.
|
|
+ GameWindow and GLControl
|
|
+ Improved creation/destruction event sequence.
|
|
+ Improved loading speed.
|
|
+ Corrected long-standing stability issues (moving between GameWindow/GLControl examples no longer results in a crash)
|
|
+ Improved compatibility (now works with Mesa3d 7.0.x as well as 6.5.x)
|
|
+ Better error handling (although not completely safe by any measure).
|
|
+ Corrected client rectangle under Windows GameWindow implementation - now the Viewport correctly corresponds the rendering area.
|
|
* Critical bug: deadlock on Windows XP 32-bit. Investigating.
|
|
+ Input
|
|
+ Slightly improved keyboard handling functions.
|
|
+ OpenGL
|
|
+ Added convenience overloads for Color[34] that can directly take a System.Drawing.Color struct.
|
|
|
|
+ Examples
|
|
+ Slight improvements to event handling.
|
|
+ Improved the ExampleLauncher interface (now responds to key events, added a 'Run Example' button).
|
|
|
|
|
|
OpenTK 0.3.8 -> 0.3.9
|
|
|
|
+ Bind
|
|
+ Does not rely on CodeDOM anymore (wasn't flexible enough).
|
|
+ Initial work on gl3, wgl, glx, glu compatibility.
|
|
+ Implemented almost all pending features:
|
|
+ Extensions in different classes (e.g. GL.ARB.ActiveTexture)
|
|
+ Fixed statement instead of GCHandle for improved performance
|
|
+ Real pointers instead of IntPtrs
|
|
+ CLS-Compliant and non CLS-Compliant overloads (e.g. functions with unsigned parameters).
|
|
+ Overloads over the 'basic' function (e.g. GL.Vertex3fv -> GL.Vertex3)
|
|
+ Enums now inside the GL class.
|
|
+ New commandline options
|
|
+ 'legacy': defines compatibility with Tao ('-legacy:tao')
|
|
+ 'mode': defines translation mode (e.g. gl2, gl3, wgl etc)
|
|
+ 4 files are now generated: GL.cs, GLCore.cs, GLDelegates.cs, GLEnums.cs
|
|
|
|
+ Build
|
|
+ Corrected sharpdev target (was generating monodev projects before)
|
|
+ Added sharpdev2 target.
|
|
|
|
+ OpenTK
|
|
+ GameWindow
|
|
+ Added support for keyboard input. Windows (raw input) and linux drivers.
|
|
* Improved GameWindow events (Load, Create, Destroy). Still incomplete.
|
|
* Fixed several crash bugs.
|
|
- Crashes observed when frequently creating/destroying GameWindows.
|
|
+ Input
|
|
* Interface for input devices: keyboard, mouse.
|
|
* Driver implementation for windows (raw input) and linux.
|
|
+ Works with GameWindow.
|
|
- Does not work with GLControl, yet.
|
|
+ Platform
|
|
+ X11 enhanced with Mono's X11 bindings.
|
|
* Work on platform interop utilities.
|
|
+ Minor additions to Windows.API
|
|
|
|
+ Examples
|
|
+ New GL interface.
|
|
* Temporarily disabled incomplete examples.
|
|
|
|
|
|
OpenTK 0.3.7 -> 0.3.8
|
|
|
|
+ New project layout. Only four projects remain under the 'Source' directory: Bind, Build, Examples, OpenTK
|
|
+ The whole library (Platform, Windowing, OpenGL, etc.) is now contained in the OpenTK.dll.
|
|
+ Build contains the new build system.
|
|
+ Bind contains the opengl binding generator.
|
|
+ Examples contains examples showcasing OpenTK and OpenGL.
|
|
|
|
+ Build
|
|
+ Improved console output.
|
|
+ Added support for debug target.
|
|
+ Better handling of wrong targets.
|
|
+ Moved Prebuild.xml to the Build folder.
|
|
|
|
+ OpenTK
|
|
- Removed OpenTK.Framework (superseded by GameWindow)
|
|
+ GameWindow (new, incomplete)
|
|
+ Creates render window through system calls.
|
|
+ Interface suited for games.
|
|
+ Resize event support.
|
|
+ Error handling.
|
|
- No keyboard input yet.
|
|
+ Platform
|
|
+ Numerous additions, bugfixes in OpenTK.Platform.Windows, OpenTK.Platform.X11.
|
|
+ Changed the class and namespace names.
|
|
+ Added IGLContext, IGLControl, IGameWindow, INativeWindow, IResizable interfaces.
|
|
+ Added class GLContext : IGLContext. Platform specific implementations in WinGLContext and X11GLContext.
|
|
+ Added class GLControl : IGLControl. Platform specific implementations in WinGLControl and X11GLControl.
|
|
+ Added classes WinGLNative, X11GLNative : INativeWindow.
|
|
+ Added visual studio design support for GLControl.
|
|
+ Input
|
|
* Do not use yet, it is not ready.
|
|
|
|
+ Examples
|
|
+ Added an example launcher
|
|
+ Two example categories for now: Tutorials (showcasing GameWindow) and WinForms (showcasing GLControl)
|
|
+ Added Tutorials.VBO example (incomplete)
|
|
+ Added WinForms.FirstWindow example.
|
|
+ Ported some of the old examples over.
|
|
* More work on examples and tutorials on the next version.
|
|
|
|
|
|
OpenTK 0.3.6 -> 0.3.7
|
|
|
|
+ OpenTK.Build
|
|
+ Added new, (more) cross-platform build system, written on C#. This takes the place of the scripts and batch files used to compile OpenTK up till now.
|
|
+ Removed all build scripts.
|
|
|
|
+ OpenTK.Framework
|
|
+ Now builds under Linux.
|
|
|
|
+ OpenTK.OpenGL.Bind
|
|
+ Synced with Tao.GlBindGen beta 2.1.3.6
|
|
+ Enabled ref/out overloads.
|
|
+ Added GLenum, which contains all opengl enumerants (useful for 'polymorphic' opengl functions).
|
|
|
|
+ OpenTK.OpenGL
|
|
+ ref/out overloads and GLenum (see above).
|
|
+ Fixed extension loading under Mac OS X.
|
|
+ Improved compatibility with 64bit platforms.
|
|
|
|
|
|
OpenTK 0.3.5 -> 0.3.6
|
|
|
|
+ OpenTK.OpenGL.Bind
|
|
+ Synced with Tao.GlBindGen codebase.
|
|
+ Uses CodeDOM internally for code generation.
|
|
+ Updated to latest specs (which include shader model 4).
|
|
|
|
+ OpenTK.OpenGL (Low level)
|
|
+ All OpenGL extensions are now generated (up to shader model 4).
|
|
+ Decorated imports and delegates with the SuppressUnmanagedCodeSecurity attribute. Major speed improvements in CPU-bound applications.
|
|
+ More robust and faster static initialisation for the GL class.
|
|
+ Updated GLHelper.cs, with methods to obtain or reload OpenGL entry points, as well as query for supported extensions.
|
|
+ Got rid of "object" overloads for typed arrays.
|
|
+ All known bugs are now fixed.
|
|
|
|
+ OpenTK.OpenGL (High level)
|
|
+ Added the DisplayList class.
|
|
|
|
+ OpenTK.Examples.OpenGL
|
|
+ Added the Basic.DisplayLists example.
|
|
|
|
|
|
|
|
OpenTK 0.3.4 -> 0.3.5
|
|
+ Thanks to Erik Ylvisaker's hard work, OpenTK now works under both Windows and X11.
|
|
+ The GLContext class now contains all needed code for mode switching.
|
|
+ The Framework class structure has been updated. Less code is duplicated between GLContext and Framework now.
|
|
+ Three new examples have been added: OpenGL.Basic.Lesson01 (equivalent to OpenGL.GLSL.Lesson01 without the shaders), OpenGL.Basic.QueryDisplayModes which shows a list of all available display modes, and OpenGL.Basic.NoFramework which shows how to use OpenGL Contexts directly (without relying on the framework).
|
|
+ New bindings for X and the XF86 extension.
|
|
+ New build system based on Prebuild and NAnt (similar to the one used in Tao or Mono.XNA).
|
|
+ Updates to the OpenTK.OpenGL.DisplayMode and ColorDepth classes.
|
|
+ More XML documentation blocks added to functions and classes.
|
|
+ Major update to OpenTK.OpenGL.Bind (see that changelog for more info).
|
|
+ Revamped GL class (it is self contained now).
|
|
+ Revamped GLContext class (it is no longer bound to the GL class initialisation).
|
|
+ Cleaner code, new functions, comments and many new wrappers.
|
|
+ Updated the spec files for opengl 2.1.
|
|
+ Added the new 64 bit types to the typemaps (gl.tm and csharp.tm)
|
|
+ The bugs in the specs are still there:
|
|
+ SGIX_icc_texture is still commented out, while enums use it.
|
|
+ LightProperty is still used by constants (the correct enum is LightParameter).
|
|
+ I think I should contact someone at the Khronos group about these. For the time being I worked around them, by adding a special case for LightProperty in the translator, and adding the SGIX enum to the missing parameters.
|
|
+ See also: http://www.haskell.org/HOpenGL/spec_bugs.html (lots of useful information on that site).
|
|
+ Directory structure updates.
|
|
+ Now every project has its own documentation.
|
|
+ The spec files for OpenGL now reside in the Source/OpenTK/OpenGL directory.
|
|
+ Minor updates to the wgl bindings (int -> IntPtr).
|
|
+ Tested the binding generator with the glx specs (the reader and the enum writer work ok, the trnaslator and the other writers will need updating).
|
|
+ Renamed the GLForm to Framework.
|
|
+ The Framework now resides in its own project directory.
|
|
|
|
|
|
OpenTK 0.3.3 -> 0.3.4
|
|
+ Corrected the crash error in Release mode (it was caused by trying to Marshal the System.Windows.Forms.Message struct to PeekMessage - adding my own Message struct corrected the issue).
|
|
+ Corrected the call to glShaderSource GLSL.Lesson01. Now the correct number is passed to the count parameter, while the null parameter was changed to IntPtr.Zero (Mono now no longers fails in this call).
|
|
+ Updated the GLSL.Lesson01 example to use GetShaderInfoLog on compilation failure.
|
|
+ OpenTK.OpenGL.Bind 0.7.5.1 -> 0.7.5.2 (see Bind changelog for more information)
|
|
+ Full Mono support under windows.
|
|
|
|
|
|
OpenTK 0.3.2 -> 0.3.3
|
|
+ OpenTK.OpenGL.Bind 0.7.5 -> 0.7.5.1 (see Bind changelog for more information)
|
|
+ Added the GLForm class which sets the base for cross-platform screen, context and keyboard handling.
|
|
+ Can now change between fullscreen and windowed modes.
|
|
+ Temporarily removed all examples except for GLSL.Lesson01, which has been updated to use the new GLForm class.
|
|
|
|
|
|
OpenTK 0.3.1 -> 0.3.2
|
|
+ OpenTK.OpenGL.Glu: Eliminated the temporary IntPtr variable in the GetString and ErrorString functions.
|
|
+ Specifications.cs_types.txt: Changed types in order to be CLS compliant.
|
|
+ OpenTK.OpenGL.Bind 0.7.4 -> 0.7.5
|
|
+ Added the GLSL.Lesson01 example.
|
|
|
|
|
|
OpenTK 0.3.0 -> 0.3.1
|
|
+ Updated the binding generator to version 0.7.4, based on the work done for Tao.
|
|
+ Updated the Context load functions. Now Context loads all functions are extensions, and the derived classes override this behavior as needed.
|
|
+ Changed the uint array used in the DisplayLists example to an int array.
|
|
+ Added the changelog! :)
|