the Fiddler's picture

The Open Toolkit library 1.1.0-stable

Download: download_opentk.html
Size: 585 bytes
md5_file hash: c273cd9e9ce41651b1986b453cdefb92
First released: 19 February, 2014 - 10:21
Last updated: 19 February, 2014 - 10:24

http://www.opentk.com/news/opentk-1.1-stable-released

the Fiddler's picture

The Open Toolkit library 1.1.0-rc2

Download: download-opentk_5.html
Size: 413 bytes
md5_file hash: e76da19cd2296a302475c77aaa82440f
First released: 10 February, 2014 - 10:27
Last updated: 10 February, 2014 - 10:28

http://www.opentk.com/news/opentk-1.1-rc2-released-with-joystick-hat-sup...

the Fiddler's picture

The Open Toolkit library 1.1.0-rc1

Download: download-opentk.html
Size: 413 bytes
md5_file hash: e76da19cd2296a302475c77aaa82440f
First released: 15 January, 2014 - 13:41
Last updated: 15 January, 2014 - 13:41

http://www.opentk.com/opentk-1.1-rc1-released-with-input-hotplugging

the Fiddler's picture

The Open Toolkit library 1.1-2014-01-02

Download: download-opentk.html
Size: 413 bytes
md5_file hash: e76da19cd2296a302475c77aaa82440f
First released: 3 January, 2014 - 14:51
Last updated: 3 January, 2014 - 14:53

http://www.opentk.com/opentk-1.1-beta4-released-with-joystick-and-gamepa...

the Fiddler's picture

The Open Toolkit library 1.1.0-2013-12-15

Download: download-opentk.html
Size: 413 bytes
md5_file hash: e76da19cd2296a302475c77aaa82440f
First released: 15 December, 2013 - 23:36
Last updated: 15 December, 2013 - 23:38

http://www.opentk.com/opentk-1.1-beta3-released-with-new-interop-method

the Fiddler's picture

The Open Toolkit library 1.1.0-2013-11-22

Download: download-opentk_0_0.html
Size: 413 bytes
md5_file hash: e76da19cd2296a302475c77aaa82440f
First released: 22 November, 2013 - 22:25
Last updated: 2 December, 2013 - 22:27

The Open Toolkit 1.1
22 November 2013

[Overview]

This is a beta release for OpenTK 1.1

New in OpenTK 1.1:
- support for OpenGL 4.4 and OpenGL ES 3.0
- strongly-typed enums for OpenGL ES 2.0 and 3.0
- inline documentation for all OpenGL and OpenGL ES core functions
- a new SDL2 backend for improved platform compatibility
- a greatly expanded math library
- numerous bugfixes for Mac OS X, Windows 8 and Linux
- ANGLE support for Windows systems without OpenGL drivers
- Support for Retina / high-DPI monitors

All users are strongly encouraged to upgrade to OpenTK 1.1

Visit http://www.opentk.com for the latest news and information on the Open Toolkit library

Download the source code at https://github.com/opentk/opentk

[Resolved issues]

Please refer to the following pages:
- https://github.com/opentk/opentk/issues/closed
- http://www.opentk.com/project/issues/opentk?sort=desc&order=Last+updated...

[Known issues]

- [all] The size of OpenTK.dll can be reduced.

- [all] GamePad API throws NotImplementedException.

- [all] Keyboard API exposes ushort parameter.

- [SDL] does not support ChangeResolution API.

- [SDL] does not support multiple keyboards/mice.

- [SDL] does not support GLControl.

- [Mac/Carbon] does not support Retina resolutions. Please use the SDL backend instead.

[Report an issue]
If you encounter an issue, please report it at:
https://github.com/opentk/opentk/issues

Highest priority will be given to regressions from OpenTK 1.0

[API compatibility]

The vast majority of projects will be able to upgrade to OpenTK 1.1 without any modifications. However, due to updates in the official OpenGL specification and due to bugfixes in the binding generator, a number of OpenGL signatures have changed between OpenTK 1.0 and 1.1.

Modified signatures have been marked with the [Obsolete] attribute. A warning message will be generated with instructions on a suggested replacement.

In a small number of cases, using the original signature would lead to incorrect results or a crash. These cases will generate a compiler error now. If you use any of the following signatures, please apply the suggested modification:

Namespace OpenTK.Graphics.OpenGL
Change signature:
- GL.MultiDrawArrays (“out” -> “ref”)
- GL.Amd.DeletePerfMonitors (“out” -> “ref”)

Change signature (may cause crash):
- GL.Apple.ObjectPurgeable (returns “AppleObjectPurgeable” instead of “IntPtr”)
- GL.Ext.SeparableFilter2D
- GL.Ibm.EdgeFlagPointerList (“bool[]” -> “bool*[]”)
- GL.NV.TransformFeedbackVaryings (“string[]” -> “int[]”)

Change return type:
- GL.WaitSync (returns “WaitSyncFlags” instead of “ArbSync”)

Namespace OpenTK.Graphics.ES11
Change return type:
- GL.GetError (“ErrorCode” instead of “All”)

Change “ref” parameters to “out”:
- GL.GenBuffers
- GL.GenTextures
- GL.GetBoolean
- GL.GetBufferParameter
- GL.GetClipPlane
- GL.GetClipPlanex
- GL.GetFixed
- GL.GetFloat
- GL.GetInteger
- GL.GetLight
- GL.GetLightx
- GL.GetMaterial
- GL.GetMaterialx
- GL.GetTexEnv
- GL.GetTexEnvx
- GL.GetTexParameter
- GL.GetTexParameterx
- GL.Oes.GenFramebuffers
- GL.Oes.GetClipPlane
- GL.Oes.GetClipPlanex
- GL.Oes.GetFixed
- GL.Oes.GetFramebufferAttachmentParameter
- GL.Oes.GetLightx
- GL.Oes.GetMaterialx
- GL.Oes.GetRenderbufferParameter
- GL.Oes.GetTexEnvx
- GL.Oes.GetTexGen
- GL.Oes.GetTexGenx
- GL.Oes.GetTexParameterx
- GL.Oes.QueryMatrixx
- GL.NV.GenFences
- GL.NV.GetFence

Change namespace:
- GL.ClipPlanefIMG -> GL.Img.ClipPlane
- GL.DisableDriverControlQCOM -> GL.Qcom.DisableDriverControl

Namespace OpenTK.Graphics.ES20.GL
Change signature (may cause crash):
- GL.NV.GetFence now takes three parameters instead of two

Change “ref” parameters to “out”:
- GL.GetActiveAttrib
- GL.GetActiveUniform
- GL.GetAttachedShaders
- GL.GetProgramInfoLog
- GL.GetShaderInfoLog
- GL.GetShaderSource
- GL.Amd.GetPerfMonitorCounterData
- GL.Amd.GetPerfMonitorCounters
- GL.Amd.GetPerfMonitorCounterString
- GL.Amd.GetPerfMonitorGroup
- GL.Amd.GetPerfMonitorGroupString
- GL.Amd.SelectPerfMonitorCounters

Change namespace:
- GL.DisableDriverControlQCOM -> GL.Qcom.DisableDriverControl
- GL.GetDriverControlsQCOM -> GL.Qcom.GetDriverControls
- GL.GetDriverControlStringQCOM -> GL.Qcom.GetDriverControlString

the Fiddler's picture

The Open Toolkit library 1.0-2010-10-06

Download: download-opentk_0.html
Size: bytes
md5_file hash: e76da19cd2296a302475c77aaa82440f
First released: 6 October, 2010 - 17:13
Last updated: 6 October, 2010 - 20:42

This is the October 2010 release for the 1.0 series. Notable changes:
* New MSBuild-based build system with automated versioning, zip and nsis generation. Build.exe is no longer required.
* Significantly improved nsis installation script.
* Improved stability on Ati drivers.
* Improved example browser and documentation.
* Improved support for compilation on Mono.
* Various smaller bugfixes.

Visit http://www.opentk.com for the latest news and information on the Open Toolkit.

[Resolved issues]

http://www.opentk.com/project/issues/opentk/

#1498: [CL] ContextProperties should be mapped to IntPtr, not int
#1585: Mouse focus in GameWindow when in Windowed mode
#1673: Add oalinst to windows installer
#1680: Examples fail to compile
#1746: GetCurrentContext null
#1765: Title not set in native X11 window
#1881: Constructor 'public Vector4d(Vector3 v, double w)' has wrong type for 'v'
#1874: OpenTK can sometimes fail to share contexts
#1995: OpenTK.Graphics.GraphicsContextException

Please report any issues you encounter at http://www.opentk.com/node/add/project-issue/opentk

[Known issues]

* Visual Studio 2005 and 2008 are no longer supported. Please use Visual Studio 2010 or MonoDevelop 2.4 to edit OpenTK. The project can also be built from the commandline (see documentation).

* The Mac OS X port needs more testing. If you encounter a bug, please report it at http://www.opentk.com/node/add/project-issue/opentk.

* OpenGL 3.1 and 3.2 fucntions may be missing specific tokens. Please report any such issues at http://www.opentk.com/node/add/project-issue/opentk

* Mono 2.2 and 2.4.0 fail to compile OpenTK due to a compiler bug (https://bugzilla.novell.com/show_bug.cgi?id=488960). Please compile with Mono 2.0, 2.4.2+ or use the supplied binaries instead.

* XBuild <= 2.4.3 fails to build OpenTK. Please use XBuild 2.6.0 or newer.

[API changes]

Please note that binary compatibility is not preserved between beta releases.

If you are upgrading from OpenTK 0.9.9-0 or earlier you can simplify the upgrade process by adding a reference to OpenTK.Compatibility.dll and OpenTK.GLControl.dll (if necessary). OpenTK.Compatibility contains code and APIs that have been deprecated and removed from the core library and supports applications written against the Tao framework (Tao.OpenGl, Tao.OpenAl and Tao.Platform.Windows.SimpleOpenGlControl).

[1.0 - 6 October 2010]

No API changes.

[1.0 rc1]

No API changes.

[1.0 beta-3]

No API changes.

[1.0 beta-2]

1. NormalPointer(..., int) and FogCoordPointer(..., int) overloads no longer specify a 'size' argument.
Solution: this is the correct signature, the 'size' argument found in previous OpenTK versions was invalid. This bug is unlikely to appear in practice.

[1.0 beta-1]

1. Compiler errors in OpenTK.Graphics.ES20 about missing "All" enums.
Solution: The ES20 namespace now contains proper, type-safe enums, similar to the OpenGL and OpenAL namespaces. Please replaces all instances of the All enum by the enums suggested by your compiler.

2. DisplayDevice.AvailableDevices and AvailableResolutions now return IList and IList instead of DisplayDevice[] and DisplayResolution[], respectively.
Solution: Please store the return value in an IList variable, instead of T[] (where T may be DisplayDevice or DisplayResolution). This issue is unlikely to come up in practice.

3. OpenGL|ES 1.0, 1.1 and OpenCL namespaces are missing.
Solution: These namespaces were not finalized in time for OpenTK 1.0 will be distributed as separate libraries. Please upgrade to the latest 1.x-dev release in http://www.opentk.com/project/opentk.

[0.9.9-3]

1. OpenTK.Matrix4d no longer contains an [int, int] indexer.
Solution: there is no solution at this time. If you were using this indexer, please file an issue report at http://www.opentk.com/node/add/project-issue

2. OpenTK.Graphics.ES20.GetProgramInfoLog now takes a StringBuilder instead of an 'out string' parameter.
Solution: the previous signature was incorrect. Please create and pass a StringBuilder to this method.

3. A number of OpenTK.Graphics.OpenGL 3.2 methods now take strongly-typed enums instead of the 'All' enum.
Solution: please replace the All enum by the correct one, as indicated by the compiler error.

4. GameWindow OnLoad and OnUnload methods are now protected instead of public.
Solution: change the access qualifier to protected when overriding these methods.

[0.9.9-2]

1. OpenTK.Utilities assembly no longer exists.
Solution: add a reference to OpenTK.Compatibility.

2. OpenTK.GLControl no longer exists in OpenTK.dll.
Solution: add a reference to OpenTK.GLControl.

3. OpenTK.Graphics.GL has been moved to OpenTK.Graphics.OpenGL.GL.
Solution: add a reference to OpenTK.Compatibility or change the relevant qualifiers from OpenTK.Graphics to OpenTK.Graphics.OpenGL or add a using directive for OpenTK.Graphics.OpenGL.

4. OpenTK.Audio.AL has been moved to OpenTK.Audio.OpenAL.AL.
Solution: add a reference to OpenTK.Compatibility or change the relevant qualifiers from OpenTK.Audio to OpenTK.Audio.OpenAL or add a using directive for OpenTK.Audio.OpenAL.

5. GameWindow events are no longer raised if the relevant On* method is overriden.
Solution: ensure that you call "base.On*" when you override one of the "On*" methods (e.g. OnLoad).

6. GameWindow OnLoad and OnUnload methods are now protected instead of public.
Solution: change the access qualifier to protected for overriding methods.

7. DisplayResolution and DisplayDevice classes have been moved from OpenTK.Graphics into the root OpenTK namespace.
Solution: change the relevant using directives and qualifiers from OpenTK.Graphics to OpenTK.

8. TextPrinter is marked as deprecated.
Solution: there is no solution at this time. The TextPrinter will continue to work as expected but is need of a dedicated maintainer.

9. Tao.OpenGl, Tao.OpenAl and Tao.Platform.Windows.SimpleOpenGlControl are marked as deprecated.
Solution: use core OpenTK classes if possible. The Tao namespaces are only offered for compatibility with existing applications and new projects should avoid using them.

[0.9.9-1]

1. The OpenTK.Math namespace no longer exists. Please replace all references by 'OpenTK'. This can be easily achieved with the following Search & Replace operations:

'using OpenTK.Math;' -> 'using OpenTK;'
'OpenTK.Math.' -> 'OpenTK.'

2. OpenCL bitfields are now mapped to 'long' instead of 'int'. Casts from [Flags] enums to 'int' may now fail. Please avoid such casts or use 'long' instead.

[0.9.9]

1. GameWindow.Resize and GameWindow.OnResize have changed signatures:

ResizeEventHandler Resize(object, ResizeEventArgs) -> EventHandler Resize(object, EventArgs)
OnResize(ResizeEventArgs) -> OnResize(EventArgs)

Please replace all instances of "ResizeEventHandler" by "EventHandler and replace "e.Width" / "e.Height" by "this.Width" and "this.Height".

2. All GameWindow.On* functions are now 'protected' instead of 'public'.

Please mark all relevant overrides as 'protected'.

3. Glu is now marked as deprecated.

Please use OpenTK instead.

4. OpenTK.Input.[Keyboard|Mouse|Joystick]Device are marked as obsolete.

Please continue using these classes normally. A future update will provide a much more versatile input API.

[0.9.8-1]

1. Parameters of OpenTK.Graphics.GL.GetShaderSource have been changed: you should now pass a single StringBuilder instead of a StringBuilder[] array.

2. Parameters of OpenTK.Graphics.GL.GetUniformIndices have been changed: you should now pass a string[] array instead of a single string.

2. Parameters of OpenTK.Graphics.GL.TransformFeedbackVaryings have been changed: you should now pass a string[] array instead of a single string.

[0.9.8-1]

This release renames GL.GetBoolea to the correct GL.GetBoolean.

[0.9.8]

1. OpenTK 0.9.8 replaces several instances of the "All" and "Version*" enums with strongly-typed equivalents. This is a breaking change. If you are affected by this change, replace these enums with the ones suggested by your compiler.

The 'v' suffix has been removed from several OpenTK.Graphics.GL functions. Please search and replace any of the following functions (list non-inclusive):

Uniform1v -> Uniform1
Materialv -> Material
Lightv -> Light

2. Several instances of the "Version12" enum have been replaced with strongly-typed equivalents. This is a breaking change that affects programs using the imaging subset of OpenGL 1.2.

If you are affected by this change, please replace all relevant instances of "Version12" with the correct enum, as indicated by your compiler.

3. OpenTK 0.9.8 removes several OpenGL overloads that take arrays of a single item. This is a breaking change. If you are affected by this change, please use the 'ref' or 'out' overload for the relevant function.

[0.9.7]

OpenTK 0.9.7 replaces several instances of the "All" and "Version30" enums with strongly-typed equivalents. This is a breaking change that potentially affects programs using OpenGL 3.0 functionality. If you are affected by this change, please replace the relevant instances of "All" or "Version30" with the correct enum, as reported by your IDE.

OpenTK 0.9.7 also fixes the naming of several core and extension functions ending in "Instanced", "Indexed" or "Varyings". If you are affected by this change, please add the missing 'd' or 's' to the relevant functions.

the Fiddler's picture

The Open Toolkit library 1.0.0-rc1

Download: opentk-1.0-rc1.html
Size: 416 bytes
md5_file hash: a7c38de1cb905a1687b7634a4b531082
First released: 24 March, 2010 - 16:14
Last updated: 24 March, 2010 - 16:25

[Overview]

This is the first release candidate for OpenTK 1.0. Notable changes:
* Implemented NSIS-based installer, added new build targets ("nsis", "lib" and "all") and made the build system more robust.
* Fixed ClassName clashes between GameWindows running on different AppDomains. Fixes NUnit support (patch by kring789).
* Improved behavior of several GameWindow events and properties on Windows and Linux.
* Fixed various documentation issues.

Visit http://www.opentk.com for the latest news and information on the Open Toolkit.

[Resolved issues]

#1132: OpenTK fails to start when XRandR is not available (Linux)
#1461: OnResize called multiple times when changing WindowState
#1599: GameWindow.X or Y don't work correctly on Linux
#1605: LINUX X, Y, Width, Height not being updated.
#1617: Hide internal / private members for the function reference
#1622: WinGLNative's window class registration strategy does not take AppDomains into account
#1649: WindowBorder.Fixed causes 1x1 sized window on Linux

Please report any issues you encounter at http://www.opentk.com/node/add/project-issue/opentk

[Known issues]

* The Mac OS X port needs more testing. If you encounter a bug, please report it at http://www.opentk.com/node/add/project-issue/opentk.

* OpenGL 3.1 and 3.2 fucntions may be missing specific tokens. Please report any such issues at http://www.opentk.com/node/add/project-issue/opentk

* Mono 2.2 and 2.4.0 fail to compile OpenTK due to a compiler bug (https://bugzilla.novell.com/show_bug.cgi?id=488960). Please compile with Mono 2.0, 2.4.2+ or use the supplied binaries instead.

* The example browser does not list summaries for available samples.

* MonoDevelop fails to sign assemblies (bugs https://bugzilla.novell.com/show_bug.cgi?id=484752 and https://bugzilla.novell.com/show_bug.cgi?id=537063).

* XBuild <= 2.4.3 fails to build OpenTK. Please use XBuild 2.6.0 or newer.

[API changes]

Please note that binary compatibility is not preserved between beta releases.

If you are upgrading from OpenTK 0.9.9-0 or earlier you can simplify the upgrade process by adding a reference to OpenTK.Compatibility.dll and OpenTK.GLControl.dll (if necessary). OpenTK.Compatibility contains code and APIs that have been deprecated and removed from the core library and supports applications written against the Tao framework (Tao.OpenGl, Tao.OpenAl and Tao.Platform.Windows.SimpleOpenGlControl).

[1.0 rc1]

No API changes.

[1.0 beta-3]

No API changes.

[1.0 beta-2]

1. NormalPointer(..., int) and FogCoordPointer(..., int) overloads no longer specify a 'size' argument.
Solution: this is the correct signature, the 'size' argument found in previous OpenTK versions was invalid. This bug is unlikely to appear in practice.

[1.0 beta-1]

1. Compiler errors in OpenTK.Graphics.ES20 about missing "All" enums.
Solution: The ES20 namespace now contains proper, type-safe enums, similar to the OpenGL and OpenAL namespaces. Please replaces all instances of the All enum by the enums suggested by your compiler.

2. DisplayDevice.AvailableDevices and AvailableResolutions now return IList and IList instead of DisplayDevice[] and DisplayResolution[], respectively.
Solution: Please store the return value in an IList variable, instead of T[] (where T may be DisplayDevice or DisplayResolution). This issue is unlikely to come up in practice.

3. OpenGL|ES 1.0, 1.1 and OpenCL namespaces are missing.
Solution: These namespaces were not finalized in time for OpenTK 1.0 will be distributed as separate libraries. Please upgrade to the latest 1.x-dev release in http://www.opentk.com/project/opentk.

[0.9.9-3]

1. OpenTK.Matrix4d no longer contains an [int, int] indexer.
Solution: there is no solution at this time. If you were using this indexer, please file an issue report at http://www.opentk.com/node/add/project-issue

2. OpenTK.Graphics.ES20.GetProgramInfoLog now takes a StringBuilder instead of an 'out string' parameter.
Solution: the previous signature was incorrect. Please create and pass a StringBuilder to this method.

3. A number of OpenTK.Graphics.OpenGL 3.2 methods now take strongly-typed enums instead of the 'All' enum.
Solution: please replace the All enum by the correct one, as indicated by the compiler error.

4. GameWindow OnLoad and OnUnload methods are now protected instead of public.
Solution: change the access qualifier to protected when overriding these methods.

[0.9.9-2]

1. OpenTK.Utilities assembly no longer exists.
Solution: add a reference to OpenTK.Compatibility.

2. OpenTK.GLControl no longer exists in OpenTK.dll.
Solution: add a reference to OpenTK.GLControl.

3. OpenTK.Graphics.GL has been moved to OpenTK.Graphics.OpenGL.GL.
Solution: add a reference to OpenTK.Compatibility or change the relevant qualifiers from OpenTK.Graphics to OpenTK.Graphics.OpenGL or add a using directive for OpenTK.Graphics.OpenGL.

4. OpenTK.Audio.AL has been moved to OpenTK.Audio.OpenAL.AL.
Solution: add a reference to OpenTK.Compatibility or change the relevant qualifiers from OpenTK.Audio to OpenTK.Audio.OpenAL or add a using directive for OpenTK.Audio.OpenAL.

5. GameWindow events are no longer raised if the relevant On* method is overriden.
Solution: ensure that you call "base.On*" when you override one of the "On*" methods (e.g. OnLoad).

6. GameWindow OnLoad and OnUnload methods are now protected instead of public.
Solution: change the access qualifier to protected for overriding methods.

7. DisplayResolution and DisplayDevice classes have been moved from OpenTK.Graphics into the root OpenTK namespace.
Solution: change the relevant using directives and qualifiers from OpenTK.Graphics to OpenTK.

8. TextPrinter is marked as deprecated.
Solution: there is no solution at this time. The TextPrinter will continue to work as expected but is need of a dedicated maintainer.

9. Tao.OpenGl, Tao.OpenAl and Tao.Platform.Windows.SimpleOpenGlControl are marked as deprecated.
Solution: use core OpenTK classes if possible. The Tao namespaces are only offered for compatibility with existing applications and new projects should avoid using them.

[0.9.9-1]

1. The OpenTK.Math namespace no longer exists. Please replace all references by 'OpenTK'. This can be easily achieved with the following Search & Replace operations:

'using OpenTK.Math;' -> 'using OpenTK;'
'OpenTK.Math.' -> 'OpenTK.'

2. OpenCL bitfields are now mapped to 'long' instead of 'int'. Casts from [Flags] enums to 'int' may now fail. Please avoid such casts or use 'long' instead.

[0.9.9]

1. GameWindow.Resize and GameWindow.OnResize have changed signatures:

ResizeEventHandler Resize(object, ResizeEventArgs) -> EventHandler Resize(object, EventArgs)
OnResize(ResizeEventArgs) -> OnResize(EventArgs)

Please replace all instances of "ResizeEventHandler" by "EventHandler and replace "e.Width" / "e.Height" by "this.Width" and "this.Height".

2. All GameWindow.On* functions are now 'protected' instead of 'public'.

Please mark all relevant overrides as 'protected'.

3. Glu is now marked as deprecated.

Please use OpenTK instead.

4. OpenTK.Input.[Keyboard|Mouse|Joystick]Device are marked as obsolete.

Please continue using these classes normally. A future update will provide a much more versatile input API.

[0.9.8-1]

1. Parameters of OpenTK.Graphics.GL.GetShaderSource have been changed: you should now pass a single StringBuilder instead of a StringBuilder[] array.

2. Parameters of OpenTK.Graphics.GL.GetUniformIndices have been changed: you should now pass a string[] array instead of a single string.

2. Parameters of OpenTK.Graphics.GL.TransformFeedbackVaryings have been changed: you should now pass a string[] array instead of a single string.

[0.9.8-1]

This release renames GL.GetBoolea to the correct GL.GetBoolean.

[0.9.8]

1. OpenTK 0.9.8 replaces several instances of the "All" and "Version*" enums with strongly-typed equivalents. This is a breaking change. If you are affected by this change, replace these enums with the ones suggested by your compiler.

The 'v' suffix has been removed from several OpenTK.Graphics.GL functions. Please search and replace any of the following functions (list non-inclusive):

Uniform1v -> Uniform1
Materialv -> Material
Lightv -> Light

2. Several instances of the "Version12" enum have been replaced with strongly-typed equivalents. This is a breaking change that affects programs using the imaging subset of OpenGL 1.2.

If you are affected by this change, please replace all relevant instances of "Version12" with the correct enum, as indicated by your compiler.

3. OpenTK 0.9.8 removes several OpenGL overloads that take arrays of a single item. This is a breaking change. If you are affected by this change, please use the 'ref' or 'out' overload for the relevant function.

[0.9.7]

OpenTK 0.9.7 replaces several instances of the "All" and "Version30" enums with strongly-typed equivalents. This is a breaking change that potentially affects programs using OpenGL 3.0 functionality. If you are affected by this change, please replace the relevant instances of "All" or "Version30" with the correct enum, as reported by your IDE.

OpenTK 0.9.7 also fixes the naming of several core and extension functions ending in "Instanced", "Indexed" or "Varyings". If you are affected by this change, please add the missing 'd' or 's' to the relevant functions.

the Fiddler's picture

The Open Toolkit library 1.0-beta-3

Download: opentk-1.0-beta-3.html
Size: 472 bytes
md5_file hash: d79af23824d692c8d08d601f8ddc385b
First released: 9 March, 2010 - 13:50
Last updated: 9 March, 2010 - 14:26

[Overview]

This is the third beta release of OpenTK 1.0. This release resolves a large number of identified issues:
* adds support for doxygen-based documentation.
* significantly improves GameWindow stability.
* improves stability on multithreaded scenarios.
* fixes a number of input-related bugs.
* improves support for OpenGL 3.2 functions and adds a number of missing OpenGL tokens.
* features a better "GameWindow States" sample and introduces a "Multithreaded Rendering" sample.
* adds new double-precision based OpenGL overloads.
* fixes a number of smaller annoyances and oversights.

Visit http://www.opentk.com for the latest news and information on the Open Toolkit.

[Resolved issues]

#966: [GameWindow] Changing WindowBorder from Hidden to Normal/Fixed does not update the relevant property on KDE4.2
#1244: Alt+Tab weirdness
#1343: alGetListener3f documentation is problematic
#1417: Changing to fullscreen in demos -prob
#1418: [OpenTK] Invisible window when changing from Fullscreen to Normal WIndowState on Windows 7
#1419: [OpenTK] NativeWindow reported as focused whenever mouse enters its area, even without clicking (win32)
#1422: Missing EnableCap.PrimitiveRestart
#1443: GetActiveUniforms parameter name
#1444: TexCoordPointer creates StackOverflow
#1446: MouseWheelEventArgs.Delta
#1457: GameWindow Width and Height properties are inconsistent
#1467: Failure to initialize on Windows.
#1468: Crash caused by call to Egl.IsSupported
#1483: ES20 application problem, Graphicmode with stencil buffer?
[#1492]
#1498: [CL] ContextProperties should be mapped to IntPtr, not int
#1504: Color4.ToArgb returns wrong results
#1508: Window size is incorrect on Mac OS X
#1531: TextureParameterName enum missing TEXTURE_LOD_BIAS element
#1538: GLCore.cs: EnableClientState()
#1542: Vector3d.Length casts result to float
#1593: GameWindow X, Y position not correctly updating
#1596: Vector3d and Vector2d support in Functions like GL.Vertex3(), GL.Color3(), GL.TexCoord2() etc.
#1598: GameWindow states sample crashes on Ubuntu
#1600: Ensure xlib functions are surrounded with XLock/UnlockDisplay

Please report any issues you encounter at http://www.opentk.com/node/add/project-issue/opentk

[Known issues]

* The Mac OS X port needs more testing. If you encounter a bug, please report it at http://www.opentk.com/node/add/project-issue/opentk.

* OpenGL 3.1 and 3.2 fucntions may be missing specific tokens. Please report any such issues at http://www.opentk.com/node/add/project-issue/opentk

* Mono 2.2 and 2.4.0 fail to compile OpenTK due to a compiler bug (https://bugzilla.novell.com/show_bug.cgi?id=488960). Please compile with Mono 2.0, 2.4.2+ or use the supplied binaries instead.

* The example browser should list summaries for available samples.

* MonoDevelop fails to sign assemblies (bugs https://bugzilla.novell.com/show_bug.cgi?id=484752 and https://bugzilla.novell.com/show_bug.cgi?id=537063).

* XBuild <= 2.6.1 fails to compile OpenTK. This issue has been upstream.

[API changes]

Please note that binary compatibility is not preserved between beta releases.

If you are upgrading from OpenTK 0.9.9-0 or earlier you can simplify the upgrade process by adding a reference to OpenTK.Compatibility.dll and OpenTK.GLControl.dll (if necessary). OpenTK.Compatibility contains code and APIs that have been deprecated and removed from the core library and supports applications written against the Tao framework (Tao.OpenGl, Tao.OpenAl and Tao.Platform.Windows.SimpleOpenGlControl).

[1.0 beta-3]

No API changes.

[1.0 beta-2]

1. NormalPointer(..., int) and FogCoordPointer(..., int) overloads no longer specify a 'size' argument.
Solution: this is the correct signature, the 'size' argument found in previous OpenTK versions was invalid. This bug is unlikely to appear in practice.

[1.0 beta-1]

1. Compiler errors in OpenTK.Graphics.ES20 about missing "All" enums.
Solution: The ES20 namespace now contains proper, type-safe enums, similar to the OpenGL and OpenAL namespaces. Please replaces all instances of the All enum by the enums suggested by your compiler.

2. DisplayDevice.AvailableDevices and AvailableResolutions now return IList and IList instead of DisplayDevice[] and DisplayResolution[], respectively.
Solution: Please store the return value in an IList variable, instead of T[] (where T may be DisplayDevice or DisplayResolution). This issue is unlikely to come up in practice.

3. OpenGL|ES 1.0, 1.1 and OpenCL namespaces are missing.
Solution: These namespaces were not finalized in time for OpenTK 1.0 will be distributed as separate libraries. Please upgrade to the latest 1.x-dev release in http://www.opentk.com/project/opentk.

[0.9.9-3]

1. OpenTK.Matrix4d no longer contains an [int, int] indexer.
Solution: there is no solution at this time. If you were using this indexer, please file an issue report at http://www.opentk.com/node/add/project-issue

2. OpenTK.Graphics.ES20.GetProgramInfoLog now takes a StringBuilder instead of an 'out string' parameter.
Solution: the previous signature was incorrect. Please create and pass a StringBuilder to this method.

3. A number of OpenTK.Graphics.OpenGL 3.2 methods now take strongly-typed enums instead of the 'All' enum.
Solution: please replace the All enum by the correct one, as indicated by the compiler error.

4. GameWindow OnLoad and OnUnload methods are now protected instead of public.
Solution: change the access qualifier to protected when overriding these methods.

[0.9.9-2]

1. OpenTK.Utilities assembly no longer exists.
Solution: add a reference to OpenTK.Compatibility.

2. OpenTK.GLControl no longer exists in OpenTK.dll.
Solution: add a reference to OpenTK.GLControl.

3. OpenTK.Graphics.GL has been moved to OpenTK.Graphics.OpenGL.GL.
Solution: add a reference to OpenTK.Compatibility or change the relevant qualifiers from OpenTK.Graphics to OpenTK.Graphics.OpenGL or add a using directive for OpenTK.Graphics.OpenGL.

4. OpenTK.Audio.AL has been moved to OpenTK.Audio.OpenAL.AL.
Solution: add a reference to OpenTK.Compatibility or change the relevant qualifiers from OpenTK.Audio to OpenTK.Audio.OpenAL or add a using directive for OpenTK.Audio.OpenAL.

5. GameWindow events are no longer raised if the relevant On* method is overriden.
Solution: ensure that you call "base.On*" when you override one of the "On*" methods (e.g. OnLoad).

6. GameWindow OnLoad and OnUnload methods are now protected instead of public.
Solution: change the access qualifier to protected for overriding methods.

7. DisplayResolution and DisplayDevice classes have been moved from OpenTK.Graphics into the root OpenTK namespace.
Solution: change the relevant using directives and qualifiers from OpenTK.Graphics to OpenTK.

8. TextPrinter is marked as deprecated.
Solution: there is no solution at this time. The TextPrinter will continue to work as expected but is need of a dedicated maintainer.

9. Tao.OpenGl, Tao.OpenAl and Tao.Platform.Windows.SimpleOpenGlControl are marked as deprecated.
Solution: use core OpenTK classes if possible. The Tao namespaces are only offered for compatibility with existing applications and new projects should avoid using them.

[0.9.9-1]

1. The OpenTK.Math namespace no longer exists. Please replace all references by 'OpenTK'. This can be easily achieved with the following Search & Replace operations:

'using OpenTK.Math;' -> 'using OpenTK;'
'OpenTK.Math.' -> 'OpenTK.'

2. OpenCL bitfields are now mapped to 'long' instead of 'int'. Casts from [Flags] enums to 'int' may now fail. Please avoid such casts or use 'long' instead.

[0.9.9]

1. GameWindow.Resize and GameWindow.OnResize have changed signatures:

ResizeEventHandler Resize(object, ResizeEventArgs) -> EventHandler Resize(object, EventArgs)
OnResize(ResizeEventArgs) -> OnResize(EventArgs)

Please replace all instances of "ResizeEventHandler" by "EventHandler and replace "e.Width" / "e.Height" by "this.Width" and "this.Height".

2. All GameWindow.On* functions are now 'protected' instead of 'public'.

Please mark all relevant overrides as 'protected'.

3. Glu is now marked as deprecated.

Please use OpenTK instead.

4. OpenTK.Input.[Keyboard|Mouse|Joystick]Device are marked as obsolete.

Please continue using these classes normally. A future update will provide a much more versatile input API.

[0.9.8-1]

1. Parameters of OpenTK.Graphics.GL.GetShaderSource have been changed: you should now pass a single StringBuilder instead of a StringBuilder[] array.

2. Parameters of OpenTK.Graphics.GL.GetUniformIndices have been changed: you should now pass a string[] array instead of a single string.

2. Parameters of OpenTK.Graphics.GL.TransformFeedbackVaryings have been changed: you should now pass a string[] array instead of a single string.

[0.9.8-1]

This release renames GL.GetBoolea to the correct GL.GetBoolean.

[0.9.8]

1. OpenTK 0.9.8 replaces several instances of the "All" and "Version*" enums with strongly-typed equivalents. This is a breaking change. If you are affected by this change, replace these enums with the ones suggested by your compiler.

The 'v' suffix has been removed from several OpenTK.Graphics.GL functions. Please search and replace any of the following functions (list non-inclusive):

Uniform1v -> Uniform1
Materialv -> Material
Lightv -> Light

2. Several instances of the "Version12" enum have been replaced with strongly-typed equivalents. This is a breaking change that affects programs using the imaging subset of OpenGL 1.2.

If you are affected by this change, please replace all relevant instances of "Version12" with the correct enum, as indicated by your compiler.

3. OpenTK 0.9.8 removes several OpenGL overloads that take arrays of a single item. This is a breaking change. If you are affected by this change, please use the 'ref' or 'out' overload for the relevant function.

[0.9.7]

OpenTK 0.9.7 replaces several instances of the "All" and "Version30" enums with strongly-typed equivalents. This is a breaking change that potentially affects programs using OpenGL 3.0 functionality. If you are affected by this change, please replace the relevant instances of "All" or "Version30" with the correct enum, as reported by your IDE.

OpenTK 0.9.7 also fixes the naming of several core and extension functions ending in "Instanced", "Indexed" or "Varyings". If you are affected by this change, please add the missing 'd' or 's' to the relevant functions.

the Fiddler's picture

The Open Toolkit library 1.0-beta-2

Download: opentk-1.0-beta-2.html
Size: 475 bytes
md5_file hash: dc689a0415d3294ac65074b95223d8c6
First released: 17 November, 2009 - 10:33
Last updated: 17 November, 2009 - 15:29

[Overview]

This is the second beta release of OpenTK 1.0. This release a laarge number of issues identified in the first beta. Additionally, it:

  • improves support for Mac OS Χ (multiple monitors, dock integration, input focus and more).
  • allows OpenTK to run on *BSD, Solaris and other Unix variants.
  • fixes a timing issue that caused UpdateFrame events to be raised up to 50% faster than necessary.
  • adds a number of missing tokens for OpenGL 3.1 and 3.2.
  • fixes mouse movement on windows and adds support for fractional wheel values (available in high-precision mice).
  • fixes and optimizes quaternion-vector transforms.
  • further improves multithreading support on Linux.
  • works around a Visual Studio bug, which caused a number of OpenGL wrappers to disappear from intellisense.

Visit http://www.opentk.com for the latest news and information on the Open Toolkit.

[Resolved issues]

#805: [GameWindow] GameWindow.Size property on Mac OS X
#1098: [Bind] Work around VS bug by ensuring pointer parameters are generated last
#1162: GL.GenerateMipmap argument
#1166: VertexAttribIPointer pointer type parameter
#1216: [GL] GetActiveUniformBlock* methods take ArbUniformBufferObject parameters
#1279: Mouse wheel does not seem to work
#1324: Using second monitor on Mac OSX Snow Leopard
#1354: Application always run in windowed mode when using shared contexts
#1355: TextureRectangle tokens for ActiveUniformType
#1364: 1.0 beta-1 throws TypeInitializationException in OpenTK.Platform.X11.API when running on windows
#1367: Vector[234] contains C# 3.0 code
#1372: [Math] Vector transformation by Quaternion follows non-standard quaternion math convention
#1373: [Math] optimize Vector transform by Quaternion
#1376: mouse position
#1378: OpenGL Extensions test fails
#1382: OpenTK and other Unix OS
#1386: Add overloads for TexCoordPointer and NormalPointer

Please report any issues you encounter at http://www.opentk.com/node/add/project-issue/opentk

[Known issues]

[API changes]

Please note that binary compatibility is not preserved between beta releases.

If you are upgrading from OpenTK 0.9.9-0 or earlier you can simplify the upgrade process by adding a reference to OpenTK.Compatibility.dll and OpenTK.GLControl.dll (if necessary). OpenTK.Compatibility contains code and APIs that have been deprecated and removed from the core library and supports applications written against the Tao framework (Tao.OpenGl, Tao.OpenAl and Tao.Platform.Windows.SimpleOpenGlControl).

[1.0 beta-2]

1. NormalPointer(..., int) and FogCoordPointer(..., int) overloads no longer specify a 'size' argument.
Solution: this is the correct signature, the 'size' argument found in previous OpenTK versions was invalid. This bug is unlikely to appear in practice.

[1.0 beta-1]

1. Compiler errors in OpenTK.Graphics.ES20 about missing "All" enums.
Solution: The ES20 namespace now contains proper, type-safe enums, similar to the OpenGL and OpenAL namespaces. Please replaces all instances of the All enum by the enums suggested by your compiler.

2. DisplayDevice.AvailableDevices and AvailableResolutions now return IList and IList instead of DisplayDevice[] and DisplayResolution[], respectively.
Solution: Please store the return value in an IList variable, instead of T[] (where T may be DisplayDevice or DisplayResolution). This issue is unlikely to come up in practice.

3. OpenGL|ES 1.0, 1.1 and OpenCL namespaces are missing.
Solution: These namespaces were not finalized in time for OpenTK 1.0 will be distributed as separate libraries. Please upgrade to the latest 1.x-dev release in http://www.opentk.com/project/opentk.

[0.9.9-3]

1. OpenTK.Matrix4d no longer contains an [int, int] indexer.
Solution: there is no solution at this time. If you were using this indexer, please file an issue report at http://www.opentk.com/node/add/project-issue

2. OpenTK.Graphics.ES20.GetProgramInfoLog now takes a StringBuilder instead of an 'out string' parameter.
Solution: the previous signature was incorrect. Please create and pass a StringBuilder to this method.

3. A number of OpenTK.Graphics.OpenGL 3.2 methods now take strongly-typed enums instead of the 'All' enum.
Solution: please replace the All enum by the correct one, as indicated by the compiler error.

4. GameWindow OnLoad and OnUnload methods are now protected instead of public.
Solution: change the access qualifier to protected when overriding these methods.

[0.9.9-2]

1. OpenTK.Utilities assembly no longer exists.
Solution: add a reference to OpenTK.Compatibility.

2. OpenTK.GLControl no longer exists in OpenTK.dll.
Solution: add a reference to OpenTK.GLControl.

3. OpenTK.Graphics.GL has been moved to OpenTK.Graphics.OpenGL.GL.
Solution: add a reference to OpenTK.Compatibility or change the relevant qualifiers from OpenTK.Graphics to OpenTK.Graphics.OpenGL or add a using directive for OpenTK.Graphics.OpenGL.

4. OpenTK.Audio.AL has been moved to OpenTK.Audio.OpenAL.AL.
Solution: add a reference to OpenTK.Compatibility or change the relevant qualifiers from OpenTK.Audio to OpenTK.Audio.OpenAL or add a using directive for OpenTK.Audio.OpenAL.

5. GameWindow events are no longer raised if the relevant On* method is overriden.
Solution: ensure that you call "base.On*" when you override one of the "On*" methods (e.g. OnLoad).

6. GameWindow OnLoad and OnUnload methods are now protected instead of public.
Solution: change the access qualifier to protected for overriding methods.

7. DisplayResolution and DisplayDevice classes have been moved from OpenTK.Graphics into the root OpenTK namespace.
Solution: change the relevant using directives and qualifiers from OpenTK.Graphics to OpenTK.

8. TextPrinter is marked as deprecated.
Solution: there is no solution at this time. The TextPrinter will continue to work as expected but is need of a dedicated maintainer.

9. Tao.OpenGl, Tao.OpenAl and Tao.Platform.Windows.SimpleOpenGlControl are marked as deprecated.
Solution: use core OpenTK classes if possible. The Tao namespaces are only offered for compatibility with existing applications and new projects should avoid using them.

[0.9.9-1]

1. The OpenTK.Math namespace no longer exists. Please replace all references by 'OpenTK'. This can be easily achieved with the following Search & Replace operations:

'using OpenTK.Math;' -> 'using OpenTK;'
'OpenTK.Math.' -> 'OpenTK.'

2. OpenCL bitfields are now mapped to 'long' instead of 'int'. Casts from [Flags] enums to 'int' may now fail. Please avoid such casts or use 'long' instead.

[0.9.9]

1. GameWindow.Resize and GameWindow.OnResize have changed signatures:

ResizeEventHandler Resize(object, ResizeEventArgs) -> EventHandler Resize(object, EventArgs)
OnResize(ResizeEventArgs) -> OnResize(EventArgs)

Please replace all instances of "ResizeEventHandler" by "EventHandler and replace "e.Width" / "e.Height" by "this.Width" and "this.Height".

2. All GameWindow.On* functions are now 'protected' instead of 'public'.

Please mark all relevant overrides as 'protected'.

3. Glu is now marked as deprecated.

Please use OpenTK instead.

4. OpenTK.Input.[Keyboard|Mouse|Joystick]Device are marked as obsolete.

Please continue using these classes normally. A future update will provide a much more versatile input API.

[0.9.8-1]

1. Parameters of OpenTK.Graphics.GL.GetShaderSource have been changed: you should now pass a single StringBuilder instead of a StringBuilder[] array.

2. Parameters of OpenTK.Graphics.GL.GetUniformIndices have been changed: you should now pass a string[] array instead of a single string.

2. Parameters of OpenTK.Graphics.GL.TransformFeedbackVaryings have been changed: you should now pass a string[] array instead of a single string.

[0.9.8-1]

This release renames GL.GetBoolea to the correct GL.GetBoolean.

[0.9.8]

1. OpenTK 0.9.8 replaces several instances of the "All" and "Version*" enums with strongly-typed equivalents. This is a breaking change. If you are affected by this change, replace these enums with the ones suggested by your compiler.

The 'v' suffix has been removed from several OpenTK.Graphics.GL functions. Please search and replace any of the following functions (list non-inclusive):

Uniform1v -> Uniform1
Materialv -> Material
Lightv -> Light

2. Several instances of the "Version12" enum have been replaced with strongly-typed equivalents. This is a breaking change that affects programs using the imaging subset of OpenGL 1.2.

If you are affected by this change, please replace all relevant instances of "Version12" with the correct enum, as indicated by your compiler.

3. OpenTK 0.9.8 removes several OpenGL overloads that take arrays of a single item. This is a breaking change. If you are affected by this change, please use the 'ref' or 'out' overload for the relevant function.

[0.9.7]

OpenTK 0.9.7 replaces several instances of the "All" and "Version30" enums with strongly-typed equivalents. This is a breaking change that potentially affects programs using OpenGL 3.0 functionality. If you are affected by this change, please replace the relevant instances of "All" or "Version30" with the correct enum, as reported by your IDE.

OpenTK 0.9.7 also fixes the naming of several core and extension functions ending in "Instanced", "Indexed" or "Varyings". If you are affected by this change, please add the missing 'd' or 's' to the relevant functions.

the Fiddler's picture

The Open Toolkit library 1.0.0-beta-1

Download: opentk-1.0-b1.html
Size: 453 bytes
md5_file hash: f41ed023ff7f2db3ed56d4237a321b4b
First released: 10 November, 2009 - 00:07
Last updated: 10 November, 2009 - 07:27

[Overview]

This is the first beta release of OpenTK 1.0. Important changes include:

  • Type-safe OpenGL|ES 2.0 bindings.
  • A large number of new examples on picking, shaders, dds textures, constructive solid geometry and multithreading.
  • Improved Mac OS X support.
  • Improved multi-monitor support.
  • Improved multithreading support.
  • A large number of bug- and stability fixes.
  • Improved documentation.
  • Improvements and bugfixes to the build system.
  • Temporary removal of OpenGL|ES 1.0, 1.1 and OpenCL bindings.

Please visit http://www.opentk.com to report issues or request features.

[Resolved issues]

#550: Issue: GameWindow Icon Support
#552: [GameWindow] Make main loop interchangeable
#622: Marshal.PtrToStringAnsi replacement
#1013: [ES 2.0] Cleanup #1
#1014: [ES 2.0] Cleanup #2
#1015: [ES 2.0] Cleanup #3
#1028: [Math] Add vector transformation by quaternion
#1071: Not firing Load event for GLControl.
#1142: Multiple GLControls sample shutdown fails with KeyNotFoundException in rev 2209
#1265: New GetActiveUniformName overload returns garbage
#1268: restoring the cursor shape (tested on windows)
#1274: [ES 2.0] Cleanup #4
#1291: Provide mouseleave event
#1294: OnUpdateFrame function does not work with maximum update rate
#1300: [OpenCL] Possible bug at CL.CreateProgramWithBinary
#1303: [GL] fix FramebufferTexture parameters
#1304: GLControl Load event doesn't fire when using non-standard DPI
#1307: GL.Ortho behaves other than combination of OpenTK.Matrix4d.CreateOrthographic and GL.MultMatrix
#1313: TextureBuffer target
#1318: LoadAll missing
#1333: Spelling of SI units in documentation and captions
#1334: Mac OSX applications fail when setting up GLControl
#1338: Running apps in Mac OSX start a application called X11
#1339: DisplayDevice.Bounds not set
#1341: Vector4 constructor describes w component as z component + other spelling corrections
#1350: OpenTK.QuickStart missing System.Drawing

[Known issues]

* Mono 2.2 and 2.4.0 fail to compile OpenTK due to a compiler bug (https://bugzilla.novell.com/show_bug.cgi?id=488960). Please compile with Mono 2.0, 2.4.2+ or use the supplied binaries instead.
* The example browser is incomplete.
* The Mac OS X port needs work. If you are interested in helping out, please make a post at http://www.opentk.com/forum/3.
* MonoDevelop fails to sign assemblies (bugs https://bugzilla.novell.com/show_bug.cgi?id=484752 and https://bugzilla.novell.com/show_bug.cgi?id=537063).
* OpenGL 3.2 methods may be missing specific tokens. Please report any such issues at http://www.opentk.com/node/add/project-issue/opentk

[API changes]

Please note that binary compatibility is not preserved between beta releases.

If you are upgrading from OpenTK 0.9.9-0 or earlier you can simplify the upgrade process by adding a reference to OpenTK.Compatibility.dll and OpenTK.GLControl.dll (if necessary). OpenTK.Compatibility contains code and APIs that have been deprecated and removed from the core library, as well as code for interoperation with the Tao framework.

[1.0 beta-1]

1. Compiler errors in OpenTK.Graphics.ES20 about missing "All" enums.
Solution: The ES20 namespace now contains proper, type-safe enums, similar to the OpenGL and OpenAL namespaces. Please replaces all instances of the All enum by the enums suggested by your compiler.

2. DisplayDevice.AvailableDevices and AvailableResolutions now return IList and IList instead of DisplayDevice[] and DisplayResolution[], respectively.
Solution: Please store the return value in an IList variable, instead of T[] (where T may be DisplayDevice or DisplayResolution). This issue is unlikely to come up in practice.

3. OpenGL|ES 1.0, 1.1 and OpenCL namespaces are missing.
Solution: These namespaces were not finalized in time for OpenTK 1.0 will be distributed as separate libraries. Please upgrade to the latest 1.x-dev release in http://www.opentk.com/project/opentk.

[0.9.9-3]

1. OpenTK.Matrix4d no longer contains an [int, int] indexer.
Solution: there is no solution at this time. If you were using this indexer, please file an issue report at http://www.opentk.com/node/add/project-issue

2. OpenTK.Graphics.ES20.GetProgramInfoLog now takes a StringBuilder instead of an 'out string' parameter.
Solution: the previous signature was incorrect. Please create and pass a StringBuilder to this method.

3. A number of OpenTK.Graphics.OpenGL 3.2 methods now take strongly-typed enums instead of the 'All' enum.
Solution: please replace the All enum by the correct one, as indicated by the compiler error.

4. GameWindow OnLoad and OnUnload methods are now protected instead of public.
Solution: change the access qualifier to protected when overriding these methods.

[0.9.9-2]

1. OpenTK.Utilities assembly no longer exists.
Solution: add a reference to OpenTK.Compatibility.

2. OpenTK.GLControl no longer exists in OpenTK.dll.
Solution: add a reference to OpenTK.GLControl.

3. OpenTK.Graphics.GL has been moved to OpenTK.Graphics.OpenGL.GL.
Solution: add a reference to OpenTK.Compatibility or change the relevant qualifiers from OpenTK.Graphics to OpenTK.Graphics.OpenGL or add a using directive for OpenTK.Graphics.OpenGL.

4. OpenTK.Audio.AL has been moved to OpenTK.Audio.OpenAL.AL.
Solution: add a reference to OpenTK.Compatibility or change the relevant qualifiers from OpenTK.Audio to OpenTK.Audio.OpenAL or add a using directive for OpenTK.Audio.OpenAL.

5. GameWindow events are no longer raised if the relevant On* method is overriden.
Solution: ensure that you call "base.On*" when you override one of the "On*" methods (e.g. OnLoad).

6. GameWindow OnLoad and OnUnload methods are now protected instead of public.
Solution: change the access qualifier to protected for overriding methods.

7. DisplayResolution and DisplayDevice classes have been moved from OpenTK.Graphics into the root OpenTK namespace.
Solution: change the relevant using directives and qualifiers from OpenTK.Graphics to OpenTK.

8. TextPrinter is marked as deprecated.
Solution: there is no solution at this time. The TextPrinter will continue to work as expected but is need of a dedicated maintainer.

9. Tao.OpenGl, Tao.OpenAl and Tao.Platform.Windows.SimpleOpenGlControl are marked as deprecated.
Solution: use core OpenTK classes if possible. The Tao namespaces are only offered for compatibility with existing applications and new projects should avoid using them.

[0.9.9-1]

1. The OpenTK.Math namespace no longer exists. Please replace all references by 'OpenTK'. This can be easily achieved with the following Search & Replace operations:

'using OpenTK.Math;' -> 'using OpenTK;'
'OpenTK.Math.' -> 'OpenTK.'

2. OpenCL bitfields are now mapped to 'long' instead of 'int'. Casts from [Flags] enums to 'int' may now fail. Please avoid such casts or use 'long' instead.

[0.9.9]

1. GameWindow.Resize and GameWindow.OnResize have changed signatures:

ResizeEventHandler Resize(object, ResizeEventArgs) -> EventHandler Resize(object, EventArgs)
OnResize(ResizeEventArgs) -> OnResize(EventArgs)

Please replace all instances of "ResizeEventHandler" by "EventHandler and replace "e.Width" / "e.Height" by "this.Width" and "this.Height".

2. All GameWindow.On* functions are now 'protected' instead of 'public'.

Please mark all relevant overrides as 'protected'.

3. Glu is now marked as deprecated.

Please use OpenTK instead.

4. OpenTK.Input.[Keyboard|Mouse|Joystick]Device are marked as obsolete.

Please continue using these classes normally. A future update will provide a much more versatile input API.

[0.9.8-1]

1. Parameters of OpenTK.Graphics.GL.GetShaderSource have been changed: you should now pass a single StringBuilder instead of a StringBuilder[] array.

2. Parameters of OpenTK.Graphics.GL.GetUniformIndices have been changed: you should now pass a string[] array instead of a single string.

2. Parameters of OpenTK.Graphics.GL.TransformFeedbackVaryings have been changed: you should now pass a string[] array instead of a single string.

[0.9.8-1]

This release renames GL.GetBoolea to the correct GL.GetBoolean.

[0.9.8]

1. OpenTK 0.9.8 replaces several instances of the "All" and "Version*" enums with strongly-typed equivalents. This is a breaking change. If you are affected by this change, replace these enums with the ones suggested by your compiler.

The 'v' suffix has been removed from several OpenTK.Graphics.GL functions. Please search and replace any of the following functions (list non-inclusive):

Uniform1v -> Uniform1
Materialv -> Material
Lightv -> Light

2. Several instances of the "Version12" enum have been replaced with strongly-typed equivalents. This is a breaking change that affects programs using the imaging subset of OpenGL 1.2.

If you are affected by this change, please replace all relevant instances of "Version12" with the correct enum, as indicated by your compiler.

3. OpenTK 0.9.8 removes several OpenGL overloads that take arrays of a single item. This is a breaking change. If you are affected by this change, please use the 'ref' or 'out' overload for the relevant function.

[0.9.7]

OpenTK 0.9.7 replaces several instances of the "All" and "Version30" enums with strongly-typed equivalents. This is a breaking change that potentially affects programs using OpenGL 3.0 functionality. If you are affected by this change, please replace the relevant instances of "All" or "Version30" with the correct enum, as reported by your IDE.

OpenTK 0.9.7 also fixes the naming of several core and extension functions ending in "Instanced", "Indexed" or "Varyings". If you are affected by this change, please add the missing 'd' or 's' to the relevant functions.

the Fiddler's picture

The Open Toolkit library 0.9.9-3

Download: opentk-0.9.9-3.html
Size: 432 bytes
md5_file hash: 12585af807f71e1f7207809a014b8f7b
First released: 21 October, 2009 - 14:39
Last updated: 21 October, 2009 - 14:47

[Overview]

This is the a preview release of what will become OpenTK 1.0. Major changes:

  • Bindings with generic ref/out overloads now reflect changes back to the caller.
  • Improved OpenGL 3.2 bindings.
  • Added helper overloads to GetAttrib* methods.
  • Fixed 'out string' parameters in ES20 (should have been StringBuilder).
  • Added Icon and IconChanged support to NativeWindow.
  • Added Focused and FocusedChanged support to NativeWindow.
  • Added KeyPress event to NativeWindow (in progress).
  • Improved WindowBorder and WindowState changes for NativeWindow on win32.
  • Fixed premature GLControl initialization (Load event is now correctly raised).
  • Fixed Vector[234]d and Matrix4d signatures (double instead of float) and added several new methods to Matrix4 and Matrix4d.
  • Fixed a large number of smaller issues and annoyances in NativeWindow (see complete bug list, below).
  • Improved internal loading code for the various bindings.
  • Made the binding generator more robust when handling invalid or malformed specifications.
  • GameWindow OnLoad and OnUnload methods are now protected instead of public (this was supposed to happen in the previous release).

Download complete changelog.

Please visit http://www.opentk.com to report issues or request features.

[Resolved issues]

#588: ARB_geometry_shader4
#964: [OpenCL] Bitfields should be mapped to 'long' not 'int'
#1071: Not firing Load event for GLControl.
#1083: Maximize Gamewindow with hidden border
#1146: [GL3.2] Multiple (minor) corrections
#1151: ARB_texture_multisample
#1165: X11KeyMap has a Windows.Forms dependancy
#1175: [Graphics] GraphicsContext.GraphicsMode property returns null on Linux
#1176: [Compat] OpenTK.Compatibility is missing dll.config file
#1180: [Input] Potential stack corruption in opentk-input branch
#1190: GameWindow dispose on linux
#1207: [GL] add Color4 argument overload for ClearColor
#1213: [GL] let GetUniformName() return String
#1214: GLControl exception und Mono Ubuntu 9.04
#1215: [Math] Add vector overloads to Vector[234].Mult
#1218: [NativeWindow] Avoid modal loop during window resize/movement
#1226: Matrix4d.CreatePerspectiveFieldOfView
#1227: Matrix4.M42 documentation
#1233: OpenCL - AddVector.cs - example corrections
#1235: Matrix4d wrong value on GL.GetDouble
#1239: Debug.Print in Title property
#1240: Generic ref and out wrappers do not copy results to the reference parameter
#1248: [INativeWindow] Implement Focused property and FocusedChanged event

[Known issues]

* Mono 2.2 and 2.4.0 cannot compile this release due to a compiler bug (https://bugzilla.novell.com/show_bug.cgi?id=488960). Please compile with Mono 2.0, 2.4.2+ or use the precompiled binaries instead.
* The example browser is incomplete.
* The Mac OS X port is untested and may fail to work correctly. If you are interested in helping out, please make a post at the forums.
* MonoDevelop fails to sign assemblies (bugs https://bugzilla.novell.com/show_bug.cgi?id=484752 and https://bugzilla.novell.com/show_bug.cgi?id=537063).

[API changes]

Please note that binary compatibility is not preserved between beta releases.

If you are upgrading from OpenTK 0.9.9-0 or earlier, please add a reference to OpenTK.Compatibility.dll and OpenTK.GLControl.dll (if necessary).

[0.9.9-3]

1. OpenTK.Matrix4d no longer contains an [int, int] indexer.
Solution: there is no solution at this time. If you were using this indexer, please file an issue report at http://www.opentk.com/node/add/project-issue

2. OpenTK.Graphics.ES20.GetProgramInfoLog now takes a StringBuilder instead of an 'out string' parameter.
Solution: the previous signature was incorrect. Please create and pass a StringBuilder to this method.

3. A number of OpenTK.Graphics.OpenGL 3.2 methods now take strongly-typed enums instead of the 'All' enum.
Solution: please replace the All enum by the correct one, as indicated by the compiler error.

4. GameWindow OnLoad and OnUnload methods are now protected instead of public.
Solution: change the access qualifier to protected when overriding these methods.

[0.9.9-2]

1. OpenTK.Utilities assembly no longer exists.
Solution: add a reference to OpenTK.Compatibility.

2. OpenTK.GLControl no longer exists in OpenTK.dll.
Solution: add a reference to OpenTK.GLControl.

3. OpenTK.Graphics.GL has been moved to OpenTK.Graphics.OpenGL.GL.
Solution: add a reference to OpenTK.Compatibility or change the relevant qualifiers from OpenTK.Graphics to OpenTK.Graphics.OpenGL or add a using directive for OpenTK.Graphics.OpenGL.

4. OpenTK.Audio.AL has been moved to OpenTK.Audio.OpenAL.AL.
Solution: add a reference to OpenTK.Compatibility or change the relevant qualifiers from OpenTK.Audio to OpenTK.Audio.OpenAL or add a using directive for OpenTK.Audio.OpenAL.

5. GameWindow events are no longer raised if the relevant On* method is overriden.
Solution: ensure that you call "base.On*" when you override one of the "On*" methods (e.g. OnLoad).

6. GameWindow OnLoad and OnUnload methods are now protected instead of public.
Solution: change the access qualifier to protected for overriding methods.

7. DisplayResolution and DisplayDevice classes have been moved from OpenTK.Graphics into the root OpenTK namespace.
Solution: change the relevant using directives and qualifiers from OpenTK.Graphics to OpenTK.

8. TextPrinter is marked as deprecated.
Solution: there is no solution at this time. The TextPrinter will continue to work as expected but is need of a dedicated maintainer.

9. Tao.OpenGl, Tao.OpenAl and Tao.Platform.Windows.SimpleOpenGlControl are marked as deprecated.
Solution: use core OpenTK classes if possible. The Tao namespaces are only offered for compatibility with existing applications and new projects should avoid using them.

[0.9.9-1]

1. The OpenTK.Math namespace no longer exists. Please replace all references by 'OpenTK'. This can be easily achieved with the following Search & Replace operations:

'using OpenTK.Math;' -> 'using OpenTK;'
'OpenTK.Math.' -> 'OpenTK.'

2. OpenCL bitfields are now mapped to 'long' instead of 'int'. Casts from [Flags] enums to 'int' may now fail. Please avoid such casts or use 'long' instead.

[0.9.9]

1. GameWindow.Resize and GameWindow.OnResize have changed signatures:

ResizeEventHandler Resize(object, ResizeEventArgs) -> EventHandler Resize(object, EventArgs)
OnResize(ResizeEventArgs) -> OnResize(EventArgs)

Please replace all instances of "ResizeEventHandler" by "EventHandler and replace "e.Width" / "e.Height" by "this.Width" and "this.Height".

2. All GameWindow.On* functions are now 'protected' instead of 'public'.

Please mark all relevant overrides as 'protected'.

3. Glu is now marked as deprecated.

Please use OpenTK instead.

4. OpenTK.Input.[Keyboard|Mouse|Joystick]Device are marked as obsolete.

Please continue using these classes normally. A future update will provide a much more versatile input API.

[0.9.8-1]

1. Parameters of OpenTK.Graphics.GL.GetShaderSource have been changed: you should now pass a single StringBuilder instead of a StringBuilder[] array.

2. Parameters of OpenTK.Graphics.GL.GetUniformIndices have been changed: you should now pass a string[] array instead of a single string.

2. Parameters of OpenTK.Graphics.GL.TransformFeedbackVaryings have been changed: you should now pass a string[] array instead of a single string.

[0.9.8-1]

This release renames GL.GetBoolea to the correct GL.GetBoolean.

[0.9.8]

1. OpenTK 0.9.8 replaces several instances of the "All" and "Version*" enums with strongly-typed equivalents. This is a breaking change. If you are affected by this change, replace these enums with the ones suggested by your compiler.

The 'v' suffix has been removed from several OpenTK.Graphics.GL functions. Please search and replace any of the following functions (list non-inclusive):

Uniform1v -> Uniform1
Materialv -> Material
Lightv -> Light

2. Several instances of the "Version12" enum have been replaced with strongly-typed equivalents. This is a breaking change that affects programs using the imaging subset of OpenGL 1.2.

If you are affected by this change, please replace all relevant instances of "Version12" with the correct enum, as indicated by your compiler.

3. OpenTK 0.9.8 removes several OpenGL overloads that take arrays of a single item. This is a breaking change. If you are affected by this change, please use the 'ref' or 'out' overload for the relevant function.

[0.9.7]

OpenTK 0.9.7 replaces several instances of the "All" and "Version30" enums with strongly-typed equivalents. This is a breaking change that potentially affects programs using OpenGL 3.0 functionality. If you are affected by this change, please replace the relevant instances of "All" or "Version30" with the correct enum, as reported by your IDE.

OpenTK 0.9.7 also fixes the naming of several core and extension functions ending in "Instanced", "Indexed" or "Varyings". If you are affected by this change, please add the missing 'd' or 's' to the relevant functions.

the Fiddler's picture

The Open Toolkit library 0.9.8-3

Download: opentk-0.9.8-3.html
Size: 439 bytes
md5_file hash: 1961f73750e4cc82959f8666ba64ebb2
First released: 6 September, 2009 - 10:00
Last updated: 6 September, 2009 - 10:06

[Overview]

This release fixes issues identified in OpenTK 0.9.8-2:
* TextPrinter.Print() now correctly resets lighting, texture environment and texcoord generation modes prior to rendering.

Please visit http://www.opentk.com to report issues or request features.

[Known issues]

Mono 2.2 and 2.4 fail to compile this release. Please compile with Mono 2.0 or 2.4.2+, or use the precompiled binaries (which also work on the affected Mono versions).

OpenTK.Graphics.TextPrinter fails to render text with newlines or a layout rectangle on Mono. This is a Mono GDI+ bug.

Example documentation may not show up correctly when running on Mono. This is a Mono issue with RTF parsing.

[API changes]

Please note that binary compatibility is not preserved between beta releases.

[0.9.8-3]

No breaking changes.

[0.9.8-2]

1. Parameters of OpenTK.Graphics.GL.GetShaderSource have been changed: you should now pass a single StringBuilder instead of a StringBuilder[] array.

2. Parameters of OpenTK.Graphics.GL.GetUniformIndices have been changed: you should now pass a string[] array instead of a single string.

3. Parameters of OpenTK.Graphics.GL.TransformFeedbackVaryings have been changed: you should now pass a string[] array instead of a single string.

[0.9.8-1]

This release renames GL.GetBoolea to the correct GL.GetBoolean.

[0.9.8]

OpenTK 0.9.8 replaces several instances of the "All" and "Version*" enums with strongly-typed equivalents. This is a breaking change. If you are affected by this change, replace these enums with the ones suggested by your compiler.

OpenTK 0.9.8 removes several OpenGL overloads that take arrays of a single item. This is a breaking change. If you are affected by this change, please use the 'ref' or 'out' overload for the relevant function.

OpenTK 0.9.8 removes or replaces several invalid tokens in the DrawBuffer(s) methods. This is a breaking change.

[Changelog]

[Legend: complete('+') | WIP('*') | missing('-')]
 
 
---------------------------
 OpenTK 0.9.8-2 -> 0.9.8-3
---------------------------
 
+ OpenTK.Utilities
    + TextPrinter
        + Fixed printing when lighting, texture environment or texcoord generation modes have been modified.
the Fiddler's picture

The Open Toolkit library 0.9.9-2b

Download: opentk-0.9.9-2b.html
Size: 433 bytes
md5_file hash: 762803aa41d68aa715aed078c03d4750
First released: 6 September, 2009 - 09:50
Last updated: 6 September, 2009 - 09:59

[Overview]

This is the third preview release of what will become OpenTK 1.0. Major changes:

  • Added new OpenTK.Compatibility project to ensure compatilibility with older OpenTK and Tao projects.
  • Deprecated and merged OpenTK.Utilities into OpenTK.Compatibility.
  • Moved OpenTK.GLControl into its own project.
  • Added NativeWindow class and modified GameWindow to inherit from it.
  • Improved the build system and added support for signed assemblies.
  • Added complete OpenGL|ES support.
  • Recreated the OpenCL bindings using the binding generator.
  • Improved the math API.
  • Fixed all documentation warnings.
  • Improved implementations for GraphicsContext, GLControl, NativeWindow, GameWindow.
  • Added a large number of stability fixes and improved the behavior of OpenTK under buggy environments.

Please visit http://www.opentk.com to report issues or request features.

[Resolved issues]

#566: Support for signed assembly
#775: Remove [In] [Out] attributes from the GL wrappers
#993: Possible bug in GraphicsContext.CreateDummyContext()
#1071: Not firing Load event for GLControl.
#1074: X11XrandrDisplayDevice on Xming ---> Argument is out of range.
#1081: GameWindow inconsistent use of Width/Height on Windows
#1082: GameWindow Left/Top screen position
#1084: [OpenGL] ARB_imaging subset cleanup
#1089: TextPrinter is affected by TextureGen* and TextureEnvMode
#1101: OpenTK.Bind project refactoring
#1119: [Compute] "CL.GetPlatformIDs" missing "s"
#1121: GraphicsContext fails with KeyNotFoundException on SVN trunk
#1126: Bad report/count of online users
#1131: [Math] add Quaternion scaling (easy)
#1138: GLControl GraphicsContextException
#1140: ColorAttachment values on ReadBufferMode
#1141: Unhandled exception in GlControl possible bug in rev 2207
#1143: Fix all XML documentation warnings

[Known issues]

  • Mono 2.2 and 2.4 fail to compile this release (bug report: https://bugzilla.novell.com/show_bug.cgi?id=488960). Please compile with Mono 2.0, 2.4.2+ or use the precompiled binaries.
  • OpenTK.Graphics.TextPrinter fails to render text with newlines or a layout rectangle on Mono. This is a Mono GDI+ bug.
  • Example documentation may not show up correctly when running on Mono. This is a Mono issue with RTF parsing.
  • Joystick input is not supported on Mac OS X at this time.
  • OpenGL 3.0 is not supported on Mac OS X at this time.
  • The new GameWindow implementation may not function correctly on Mac OS X.
  • The new GraphicsContext implementation may not function correctly on Mac OS X.
  • MonoDevelop fails to sign assemblies (bugs https://bugzilla.novell.com/show_bug.cgi?id=484752 and https://bugzilla.novell.com/show_bug.cgi?id=537063).

[API changes]

Please note that binary compatibility is not preserved between beta releases.

[0.9.9-2]

If you are upgrading from an earlier version of OpenTK, please add a reference to OpenTK.Compatibility and OpenTK.GLControl (if you are using the GLControl).

1. OpenTK.Utilities assembly no longer exists.
Solution: add a reference to OpenTK.Compatibility.

2. OpenTK.GLControl no longer exists in OpenTK.dll.
Solution: add a reference to OpenTK.GLControl.

3. OpenTK.Graphics.GL has been moved to OpenTK.Graphics.OpenGL.GL.
Solution: add a reference to OpenTK.Compatibility or change the relevant qualifiers from OpenTK.Graphics to OpenTK.Graphics.OpenGL or add a using directive for OpenTK.Graphics.OpenGL.

4. OpenTK.Audio.AL has been moved to OpenTK.Audio.OpenAL.AL.
Solution: add a reference to OpenTK.Compatibility or change the relevant qualifiers from OpenTK.Audio to OpenTK.Audio.OpenAL or add a using directive for OpenTK.Audio.OpenAL.

5. GameWindow events are no longer raised if the relevant On* method is overriden.
Solution: ensure that you call "base.On*" when you override one of the "On*" methods (e.g. OnLoad).

6. GameWindow OnLoad and OnUnload methods are now protected instead of public.
Solution: change the access qualifier to protected for overriding methods.

7. DisplayResolution and DisplayDevice classes have been moved from OpenTK.Graphics into the root OpenTK namespace.
Solution: change the relevant using directives and qualifiers from OpenTK.Graphics to OpenTK.

8. TextPrinter is marked as deprecated.
Solution: there is no solution at this time. The TextPrinter will continue to work as expected but is need of a dedicated maintainer.

9. Tao.OpenGl, Tao.OpenAl and Tao.Platform.Windows.SimpleOpenGlControl are marked as deprecated.
Solution: use core OpenTK classes if possible. The Tao namespaces are only offered for compatibility with existing applications and new projects should avoid using them.

[0.9.9-1]

1. The OpenTK.Math namespace no longer exists. Please replace all references by 'OpenTK'. This can be easily achieved with the following Search & Replace operations:

'using OpenTK.Math;' -> 'using OpenTK;'
'OpenTK.Math.' -> 'OpenTK.'

2. OpenCL bitfields are now mapped to 'long' instead of 'int'. Casts from [Flags] enums to 'int' may now fail. Please avoid such casts or use 'long' instead.

[0.9.9]

1. GameWindow.Resize and GameWindow.OnResize have changed signatures:

ResizeEventHandler Resize(object, ResizeEventArgs) -> EventHandler Resize(object, EventArgs)
OnResize(ResizeEventArgs) -> OnResize(EventArgs)

Please replace all instances of "ResizeEventHandler" by "EventHandler and replace "e.Width" / "e.Height" by "this.Width" and "this.Height".

2. All GameWindow.On* functions are now 'protected' instead of 'public'.

Please mark all relevant overrides as 'protected'.

3. Glu is now marked as deprecated.

Please use OpenTK instead.

4. OpenTK.Input.[Keyboard|Mouse|Joystick]Device are marked as obsolete.

Please continue using these classes normally. A future update will provide a much more versatile input API.

[Changelog]

[Legend: complete('+') | WIP('*') | missing('-')]
 
---------------------------
 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.
the Fiddler's picture

The Open Toolkit library 0.9.9-1

Download: opentk-0.9.9-1.html
Size: 431 bytes
md5_file hash: cc300b4216f5bc26f5eb3e8906554404
First released: 4 August, 2009 - 10:48
Last updated: 4 August, 2009 - 10:50

The Open Toolkit 0.9.9-1 Beta

[Overview]

This is the first preview release of what will become OpenTK 1.0. Major changes:
* Initial OpenGL ES support
* OpenCL bugfixes.
* Math API improvements.
* Internal improvements to DisplayDevice and DisplayResolution.

Please note that this is a work-in-progress snapshot release and should only be used for testing purposes.

Visit http://www.opentk.com to report issues or request features.

[Resolved issues]

#744: OpenAL History
#917: [Graphics] FSAA parameter is ignored
#955: [Examples] Add forward-compatible OpenGL 3.0 example
#964: [OpenCL] Bitfields should be mapped to 'long' not 'int'
#1005: Using TextPrinterOptions.Default does not allow text to change color
#1021: GameWindowFlags
#1032: [Audio] Crash in AudioContext::CreateContext on x64
#1035: [Audio] SoundData's internal buffer size
#1037: [GL,Math] let GL.Uniform4 support Quaternion
#1050: I think... bug with "TextPrinter".
#1060: Wrong XML Comment on the W property in Vector4[d]

[Known issues]

Mono 2.2 and 2.4 fail to compile this release (bug report: https://bugzilla.novell.com/show_bug.cgi?id=488960). Please compile with Mono 2.0 or 2.4.2+, or use the precompiled binaries.

OpenTK.Graphics.TextPrinter fails to render text with newlines or a layout rectangle on Mono. This is a Mono GDI+ bug.

Example documentation may not show up correctly when running on Mono. This is a Mono issue with RTF parsing.

Joystick input is not supported on MacOS at this time.

OpenGL 3.0 is not supported on MacOS at this time.

The new GameWindow implementation may not function correctly on Mac OS X.

[API changes]

Please note that binary compatibility is not preserved between beta releases.

[0.9.9-1]

1. The OpenTK.Math namespace no longer exists. Please replace all references by 'OpenTK'. This can be easily achieved with the following Search & Replace operations:

'using OpenTK.Math;' -> 'using OpenTK;'
'OpenTK.Math.' -> 'OpenTK.'

2. OpenCL bitfields are now mapped to 'long' instead of 'int'. Casts from [Flags] enums to 'int' may now fail. Please avoid such casts or use 'long' instead.

[0.9.9]

1. GameWindow.Resize and GameWindow.OnResize have changed signatures:

ResizeEventHandler Resize(object, ResizeEventArgs) -> EventHandler Resize(object, EventArgs)
OnResize(ResizeEventArgs) -> OnResize(EventArgs)

Please replace all instances of "ResizeEventHandler" by "EventHandler and replace "e.Width" / "e.Height" by "this.Width" and "this.Height".

2. All GameWindow.On* functions are now 'protected' instead of 'public'.

Please mark all relevant overrides as 'protected'.

3. Glu is now marked as deprecated.

Please use OpenTK instead.

4. OpenTK.Input.[Keyboard|Mouse|Joystick]Device are marked as obsolete.

Please continue using these classes normally. A future update will provide a much more versatile input API.

[0.9.8-1]

1. Parameters of OpenTK.Graphics.GL.GetShaderSource have been changed: you should now pass a single StringBuilder instead of a StringBuilder[] array.

2. Parameters of OpenTK.Graphics.GL.GetUniformIndices have been changed: you should now pass a string[] array instead of a single string.

2. Parameters of OpenTK.Graphics.GL.TransformFeedbackVaryings have been changed: you should now pass a string[] array instead of a single string.

[0.9.8-1]

This release renames GL.GetBoolea to the correct GL.GetBoolean.

[0.9.8]

1. OpenTK 0.9.8 replaces several instances of the "All" and "Version*" enums with strongly-typed equivalents. This is a breaking change. If you are affected by this change, replace these enums with the ones suggested by your compiler.

The 'v' suffix has been removed from several OpenTK.Graphics.GL functions. Please search and replace any of the following functions (list non-inclusive):

Uniform1v -> Uniform1
Materialv -> Material
Lightv -> Light

2. Several instances of the "Version12" enum have been replaced with strongly-typed equivalents. This is a breaking change that affects programs using the imaging subset of OpenGL 1.2.

If you are affected by this change, please replace all relevant instances of "Version12" with the correct enum, as indicated by your compiler.

3. OpenTK 0.9.8 removes several OpenGL overloads that take arrays of a single item. This is a breaking change. If you are affected by this change, please use the 'ref' or 'out' overload for the relevant function.

[0.9.7]

OpenTK 0.9.7 replaces several instances of the "All" and "Version30" enums with strongly-typed equivalents. This is a breaking change that potentially affects programs using OpenGL 3.0 functionality. If you are affected by this change, please replace the relevant instances of "All" or "Version30" with the correct enum, as reported by your IDE.

OpenTK 0.9.7 also fixes the naming of several core and extension functions ending in "Instanced", "Indexed" or "Varyings". If you are affected by this change, please add the missing 'd' or 's' to the relevant functions.

[Changelog]

-------------------------
 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.
the Fiddler's picture

The Open Toolkit library 0.9.8-2

Download: opentk-0.9.8-2.html
Size: 431 bytes
md5_file hash: 971336b2108f4d87958bb3a314c3c504
First released: 4 August, 2009 - 10:34
Last updated: 4 August, 2009 - 10:36

The Open Toolkit 0.9.8-2 Beta
Sunday, 2 August 2009

[Overview]

This release fixes issues identified in OpenTK 0.9.8-1:
* Bind now handles string arrays correctly. Affects functions GetShaderSource, GetUniformIndices, TransformFeedbackVaryings.
* TextPrinter.Print() now correctly sets text color.
* Minor documentation errors have been fixed.

Please visit http://www.opentk.com to report issues or request features.

[Resolved issues]

#1050: I think... bug with "TextPrinter".

[Known issues]

Mono 2.2 and 2.4 fail to compile this release. Please compile with Mono 2.0 or 2.4.2+, or use the precompiled binaries (which also work on the affected Mono versions).

OpenTK.Graphics.TextPrinter fails to render text with newlines or a layout rectangle on Mono. This is a Mono GDI+ bug.

Example documentation may not show up correctly when running on Mono. This is a Mono issue with RTF parsing.

[API changes]

Please note that binary compatibility is not preserved between beta releases.

[0.9.8-2]

1. Parameters of OpenTK.Graphics.GL.GetShaderSource have been changed: you should now pass a single StringBuilder instead of a StringBuilder[] array.

2. Parameters of OpenTK.Graphics.GL.GetUniformIndices have been changed: you should now pass a string[] array instead of a single string.

3. Parameters of OpenTK.Graphics.GL.TransformFeedbackVaryings have been changed: you should now pass a string[] array instead of a single string.

[Changelog]

[Legend: complete('+') | WIP('*') | missing('-')]
 
---------------------------
 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.
    + Math
        + Minor documentation fixes.
    + Platform
        + X11XrandrDisplayDevice now ignores invalid resolutions returned by XRandR.
 
+ OpenTK.Utilities
    + TextPrinter
        + Fixed handling of text color parameter in TextPrinter.Print().
the Fiddler's picture

The Open Toolkit library 0.9.9-0

Download: opentk-0.9.9.html
Size: 427 bytes
md5_file hash: 84b182dd81dcae257adee95fce421374
First released: 24 June, 2009 - 16:55
Last updated: 24 June, 2009 - 16:57

[Overview]

This is the first preview release of what will become OpenTK 1.0. Major changes:
* Initial support for the OpenCL flat API (OpenTK.Compute).
* New, more versatile GameWindow implementation.
* Support for fullscreen antialiasing.
* Reduced reliance on Windows.Forms (dependency will be removed completely before OpenTK 1.0).

Please note that this is a work-in-progress snapshot release and should only be used for testing purposes.

Visit http://www.opentk.com to report issues or request features.

[Known issues]

Mono 2.2 and 2.4 fail to compile this release (bug report: https://bugzilla.novell.com/show_bug.cgi?id=488960). Please compile with Mono 2.0 or 2.4.2+, or use the precompiled binaries.

OpenTK.Graphics.TextPrinter fails to render text with newlines or a layout rectangle on Mono. This is a Mono GDI+ bug.

Example documentation may not show up correctly when running on Mono. This is a Mono issue with RTF parsing.

Joystick input is not supported on MacOS at this time.

OpenGL 3.0 is not supported on MacOS at this time.

The new GameWindow implementation may not function correctly on Mac OS X.

[API changes]

Please note that binary compatibility is not preserved between beta releases.

[0.9.9]

1. GameWindow.Resize and GameWindow.OnResize have changed signatures:

ResizeEventHandler Resize(object, ResizeEventArgs) -> EventHandler Resize(object, EventArgs)
OnResize(ResizeEventArgs) -> OnResize(EventArgs)

Please replace all instances of "ResizeEventHandler" by "EventHandler and replace "e.Width" / "e.Height" by "this.Width" and "this.Height".

2. All GameWindow.On* functions are now 'protected' instead of 'public'.

Please mark all relevant overrides as 'protected'.

3. Glu is now marked as deprecated.

Please use OpenTK.Math instead.

4. OpenTK.Input.[Keyboard|Mouse|Joystick]Device are marked as obsolete.

Please continue using these classes normally. A future update will provide a much more versatile input API.

[0.9.8-1]

1. GL.GetBoolea is renamed to GL.GetBoolean.

Please replace all instances of the former by GL.GetBoolean.

[0.9.8]

1. OpenTK 0.9.8 replaces several instances of the "All" and "Version*" enums with strongly-typed equivalents. This is a breaking change. If you are affected by this change, replace these enums with the ones suggested by your compiler.

The 'v' suffix has been removed from several OpenTK.Graphics.GL functions. Please search and replace any of the following functions (list non-inclusive):

Uniform1v -> Uniform1
Materialv -> Material
Lightv -> Light

2. Several instances of the "Version12" enum have been replaced with strongly-typed equivalents. This is a breaking change that affects programs using the imaging subset of OpenGL 1.2.

If you are affected by this change, please replace all relevant instances of "Version12" with the correct enum, as indicated by your compiler.

3. OpenTK 0.9.8 removes several OpenGL overloads that take arrays of a single item. This is a breaking change. If you are affected by this change, please use the 'ref' or 'out' overload for the relevant function.

[0.9.7]

OpenTK 0.9.7 replaces several instances of the "All" and "Version30" enums with strongly-typed equivalents. This is a breaking change that potentially affects programs using OpenGL 3.0 functionality. If you are affected by this change, please replace the relevant instances of "All" or "Version30" with the correct enum, as reported by your IDE.

OpenTK 0.9.7 also fixes the naming of several core and extension functions ending in "Instanced", "Indexed" or "Varyings". If you are affected by this change, please add the missing 'd' or 's' to the relevant functions.

[Changelog]

[Legend: complete('+') | WIP('*') | missing('-')]
 
-------------------------
 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).
the Fiddler's picture

The Open Toolkit library 0.9.8-1

Download: opentk-0.9.8-1.html
Size: 431 bytes
md5_file hash: 84b182dd81dcae257adee95fce421374
First released: 24 June, 2009 - 16:51
Last updated: 24 June, 2009 - 16:55

[Overview]

This release fixes issues identified in OpenTK 0.9.8:
* GL.GetBoolea is renamed to GL.GetBoolean
* TextPrinter.Clear() no longer results in text corruption.
* Matrix4.Mult() performance is increased.

Please visit http://www.opentk.com to report issues or request features.

[Known issues]

Mono 2.2 and 2.4 fail to compile this release (bug report: https://bugzilla.novell.com/show_bug.cgi?id=488960). Please compile with Mono 2.0 or 2.4.2+, or use the precompiled binaries.

OpenTK.Graphics.TextPrinter fails to render text with newlines or a layout rectangle on Mono. This is a Mono GDI+ bug.

Example documentation may not show up correctly when running on Mono. This is a Mono issue with RTF parsing.

[API changes]

Please note that binary compatibility is not preserved between beta releases.

[0.9.8-1]

This release renames GL.GetBoolea to the correct GL.GetBoolean.

[0.9.8]

OpenTK 0.9.8 replaces several instances of the "All" and "Version*" enums with strongly-typed equivalents. This is a breaking change. If you are affected by this change, replace these enums with the ones suggested by your compiler.

OpenTK 0.9.8 removes several OpenGL overloads that take arrays of a single item. This is a breaking change. If you are affected by this change, please use the 'ref' or 'out' overload for the relevant function.

OpenTK 0.9.8 removes or replaces several invalid tokens in the DrawBuffer(s) methods. This is a breaking change.

Changelog

[Legend: complete('+') | WIP('*') | missing('-')]
 
-------------------------
 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()
the Fiddler's picture

The Open Toolkit library 0.9.8

Download: opentk-0.9.8.html
Size: 405 bytes
md5_file hash: 84b182dd81dcae257adee95fce421374
First released: 31 May, 2009 - 14:23
Last updated: 31 May, 2009 - 16:44

[Overview]

This release introduces:
* Full OpenGL 3.1 support
* New example browser with source code and documentation display.
* Minor cleanups to the OpenGL API
* Improved stability
* Significantly improved TextPrinter performance
* OpenGLErrorExceptions thrown on OpenGL errors (debug builds only)
* A large number of bug fixes. Refer to the [Resolved issues] sections.

Please visit http://www.opentk.com to report issues or request features.

[Resolved issues]

To visit an issue report, type "http://www.opentk.com/node/{id}", where {id} is the issue number. For example, http://www.opentk.com/node/749

#749: ARB_texture_ buffer_object
#772: StencilOpSeparate gremlin
#774: Some Token corrections
#776: Incorrect XDelta and YDelta values in MouseMoveEventArgs
#779: Table of Contents
#792: Resharper - Bitwise operation on enum which is not marked by [Flags] attribute
#794: A Bad Method Signature&Bad Method Naming Idiom
#810: Bad texture matrix in TextPrinter
#827: Null reference exception in GraphicsContext .CreateDummyContext()
#830: AudioContext: Wrong parameters passed to Alc.CreateContext
#834: Problem between GL.ColorTable and Version12 enum
#841: OpenGL Display area doesn't match to GLControl under MacOs X.
#844: KeyboardEvents called incorrectly in Ubuntu 9.04
#847: TextPrinter layout when width, height are zero.
#851: [OpenGL] DrawBuffer and DrawBuffers tokens
#870: NullReferenceException when repeatedly creating and destroying forms containing GLControl instances

[Known issues]

Mono 2.2 and 2.4 cannot compile this release (bug report: https://bugzilla.novell.com/show_bug.cgi?id=488960). Please compile with Mono 2.0 or 2.4.2+, or use the precompiled binaries.

OpenTK.Graphics.TextPrinter fails to render text with newlines or a layout rectangle on Mono. This is a Mono GDI+ bug.

Example documentation may not show up correctly when running on Mono.

[API changes]

Please note that binary compatibility is not preserved between beta releases.

OpenTK 0.9.8 replaces several instances of the "All" and "Version*" enums with strongly-typed equivalents. This is a breaking change. If you are affected by this change, replace these enums with the ones suggested by your compiler.

OpenTK 0.9.8 removes several OpenGL overloads that take arrays of a single item. This is a breaking change. If you are affected by this change, please use the 'ref' or 'out' overload for the relevant function.

OpenTK 0.9.8 removes or replaces several invalid tokens in the DrawBuffer(s) methods. This is a breaking change.

Changelog

[Legend: complete('+') | WIP('*') | missing('-')]
 
---------------------
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.
the Fiddler's picture

The Open Toolkit library 0.9.7

Download: opentk-0.9.7.html
Size: 405 bytes
md5_file hash: 84b182dd81dcae257adee95fce421374
First released: 29 March, 2009 - 22:01
Last updated: 29 March, 2009 - 22:15

The Open Toolkit 0.9.7 Beta -- Release notes

[ Overview]

This release introduces:
* OpenGL 3.1 support
* improved OpenGL 3.0 bindings (type-safety)
* improved automatic error checking (stack traces, better coverage)

Please report any issues you may encounter at http://www.opentk.com.

[Known issues]

This release cannot be compiled on Mono due to a compiler bug (https://bugzilla.novell.com/show_bug.cgi?id=488960). Please use the precompiled binaries included in the release package.

[API changes]

Please note that binary compatibility is not preserved between beta releases.

OpenTK 0.9.7 replaces several instances of the "All" and "Version30" enums with strongly-typed equivalents. This is a breaking change that potentially affects programs using OpenGL 3.0 functionality. If you are affected by this change, please replace the relevant instances of "All" or "Version30" with the correct enum, as reported by your IDE.

OpenTK 0.9.7 also fixes the naming of several core and extension functions ending in "Instanced", "Indexed" or "Varyings". If you are affected by this change, please add the missing 'd' or 's' to the relevant functions.

[Changelog]

[Legend: complete('+') | WIP('*') | missing('-')]
 
---------------------
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.
the Fiddler's picture

The Open Toolkit library 0.9.6

Download: opentk-0.9.6.html
Size: 405 bytes
md5_file hash: 84b182dd81dcae257adee95fce421374
First released: 26 March, 2009 - 00:03
Last updated: 26 March, 2009 - 00:06

This release introduces:

  1. Automatic OpenGL error checking;
  2. Generics for improved type-safety in the OpenGL bindings
  3. Bug fixes related to OpenGL 3.0 contexts on Linux
  4. Improved documentation in OpenTK.Graphics
  5. A new EFX example ("EFX: Reverb").

Please report any issues you encounter at http://www.opentk.com.

[Known issues]

This release cannot be compiled on Mono due to a compiler bug (https://bugzilla.novell.com/show_bug.cgi?id=488960). Please use the precompiled binaries included in the release package.

[API changes]

Please note that binary compatibility is not preserved between beta releases.

OpenTK 0.9.6 replaces object overloads in OpenTK.Graphics with generics. For example GL.CallLists changes from:

void CallLists(int n, object data)

to:

void CallLists<T>(int n, ref T data) where T : struct
void CallLists<T>(int n, T[] data) where T : struct
void CallLists<T>(int n, T[,] data) where T : struct
void CallLists<T>(int n, T[,,] data) where T : struct

This change is intended to improve performance (no boxing) and type-safety in the OpenGL bindings.

This is a breaking change in the following cases:

Case: You pass parameters to the relevant function by value.
Solution: Please pass the parameters by reference.

Case: You use 4d or higher-dimension arrays.
Solution: Consider reducing the dimension of the array. If this is not possible, please pin the array and pass a pointer instead.

Case: You use jagged arrays.
Solution: Jagged arrays are not safe for use with OpenGL. Please change to multi-dimension arrays.

Case: You use objects that do not satisfy the struct constraint.
Solution: Reference types are not safe for use with OpenGL. Please use pure value types instead.

Pure value types are value types that recursively reference other value types only. For example, the following are pure value types:

struct Vector3 { public float X, Y, Z; }
struct Color4 { public float R, G, B, A; }
struct Vertex {
	public Vector3 Position;
	public Color4 Color;
}

while the following are not:

// reference type
class Player { public Vector3 Position; }
// value type that contains reference type
struct Item { public Player Player; }

Only pure value types are safe for use with OpenGL. Future OpenTK releases will contain additional runtime checks to enforce this constraint.

Changelog:

[Legend: complete('+') | WIP('*') | missing('-')]
 
---------------------
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).
the Fiddler's picture

The Open Toolkit library 0.9.5

Download: opentk-0.9.5.html
Size: 405 bytes
md5_file hash: 105545b5e9226c0bbeec70e1cf153475
First released: 8 March, 2009 - 23:09
Last updated: 8 March, 2009 - 23:12

[ Overview]

This release adds inline documentation to OpenTK.Graphics.GL,
adds support for OpenGL 3.0 on Linux, improves joystick
support on all platforms and fixes the mapping between unsigned
and signed OpenGL functions (e.g. Uniform1ui vs Uniform1i).

Please report any issues you may encounter at http://www.opentk.com/issues.

[API changes]

No breaking changes were introduced in OpenTK 0.9.5. Please note
that binary compatibility is not preserved between beta releases.

It is now possible to use joystick-like devices that contain 0 axes
and / or buttons (e.g. tablets). Make sure that your application
checks device capabilities before trying to use a joystick

[Changelog]

+ 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.
the Fiddler's picture

The Open Toolkit library 0.9.4

Download: opentk-0.9.4.html
Size: 405 bytes
md5_file hash: 105545b5e9226c0bbeec70e1cf153475
First released: 1 March, 2009 - 11:19
Last updated: 1 March, 2009 - 15:59

Continuing the recent weekly tradition, 0.9.4 is out with two exciting new features: GL3.0 and Joystick support.

Both are very much a work in progress, so please test and report any Gremlin that crosses your path.

Known limitations: no joystick on Mac OS X and no GL3.0 context on Linux or Mac OS X (you can thank Ati for this). These will be added in the following releases.

Other, less interesting changes include:

  • A new OpenGL Extension Viewer available as "Test: Extensions" in Examples.exe.
  • A fix for the GL1.1 TextPrinter fallback.
  • Metadata for OpenTK.Graphics.GL members (entry points, OpenGL version and extension for each GL method).
  • Improved release packages with smaller footprint, a better QuickStart solution.
  • Improved build system (you can build OpenTK now without using the commandline).

No breaking changes in this release, either.

With those things out of the way, OpenTK is roughly feature-complete and it's time to focus on the details: fill in the missing bits, make the API conform to the class library guidelines and tune performance. How would you prioritize the following tasks?

  1. Improve GL3.0 support.
  2. Improve joystick support (force-feedback).
  3. Improve mouse & keyboard support (make it independent of the GameWindow, allow mulitple keyboards / mice).
  4. Improve the GameWindow (implement missing functionality).
  5. Improve the public API (make sure everything is consistent with the guidelines).
  6. Improve documentation (API documentation and tutorials).
  7. Improve distribution (remove the need for OpenTK.dll.config, sign OpenTK.dll).
  8. Improve speed.
  9. Other (what?)

Please share, to help drive OpenTK development.

the Fiddler's picture

The Open Toolkit library 0.9.3

Download: opentk-0.9.3.html
Size: 389 bytes
md5_file hash: 105545b5e9226c0bbeec70e1cf153475
First released: 22 February, 2009 - 16:35
Last updated: 24 February, 2009 - 10:48

This is an important release, as it is the first to include kanato's work for Mac OS X. It also includes several smaller improvement and bugfixes to Quaternions, the MouseDevice (now has a "Move" event) and the GameWindow.

Please give this a thorough testing and report all issues you encounter!


the Fiddler's picture

The Open Toolkit library 0.9.2

Download: opentk-0.9.2.html
Size: 389 bytes
md5_file hash: 105545b5e9226c0bbeec70e1cf153475
First released: 13 February, 2009 - 23:37
Last updated: 24 February, 2009 - 10:53

A Valentine's Day snapshot.

Visit SourceForge for more download options.

OpenTK 0.9.2 comes with a new, improved TextPrinter implementation with subpixel rendering, more layout options and support for unlimited fonts. The code is still a little raw, so please test and report any problems that show up. Other features include support for half- and double-precision math functions, more GL helpers and better performance.

Now that 0.9.2 is out, it is time to merge kanato's MacOS branch, BlueMonkMN's joystick and ALyman's mouse patches. Work will then continue on the GL3.0 bindings and the possible GameWindow rewrite.

Please give this release a thorough testing and report any bugs to the bug tracker. Thanks!


the Fiddler's picture

The Open Toolkit library 0.9.1

Download: opentk-0.9.1.7z
Size: 1.41 MB
md5_file hash: 044fe083adab31b65060d88403a4a55b
First released: 4 May, 2008 - 23:08
Last updated: 30 October, 2008 - 14:11

Sourceforge download.

I hope you like long release notes, because this release needs them. Here is the short version - check Documentation/Release.txt for the long one:

  • OpenTK.OpenAL has been renamed to OpenTK.Audio. Alut and Alc have been replaced by AudioContext and AudioReader. EFX and XRam extensions are now supported. Many fixes and improvements to the interface.
  • OpenTK.OpenGL has been renamed to OpenTK.Graphics. GraphicsContext (previously GLContext) has improved support for context creation and sharing - stencil, stereo and the rest of the parameters finally work. DisplayDevice allows to find and change the resolution of any monitor in the system.
  • GameWindows can now be fullscreen. You can also set the border of the window to "fixed" (cannot be resized) or "hidden". The mouse cursor now behaves correctly.
  • Many bug and stability fixes: mouse deltas are now reported correctly, the font renderer now correctly restores state, Matrix4.Frustum now works with skewed matrices and much more.
  • New examples: Julia Set (GLSL), OpenAL Playback.
  • New tests to play with: Input logging, Resolutions, and GameWindow states.

The Release.txt file details how to upgrade from 0.9.0 to 0.9.1, so make sure you take a look.

The next release, 0.9.2, is planned to add support for joysticks, which is the last missing feature before the beta stage. As always, feature requests (or even better, implementations), thoughts and comments welcome! Also, please report any regressions you happen across.

Have fun!