Prepare for 0.9.4 release.

This commit is contained in:
the_fiddler 2009-03-01 09:55:22 +00:00
parent 67f9358bd3
commit 87c04d5bfc
9 changed files with 119 additions and 99 deletions

View file

@ -1,22 +1,19 @@
How to build OpenTK: Installation
1) Install nant from (http://nant.sourceforge.net/) OpenTK does not require installation. Simply decompress the archive to a folder of your choice.
2) Navigate to the Build folder and execute Build.exe:
2a) Under Linux/Mac OS X, type 'mono Build.exe mono' or 'mono Build.exe mono debug' for the release/debug versions of the library.
2b) Under Windows type 'build net' (or 'build net debug').
3) The binaries (library, examples) are placed in the Binaries/Release or Binaries/Debug folder.
There are other parameters you can pass to Build.exe. A brief list: Usage
net - build using the .Net framework. To use OpenTK, you need to reference OpenTK.dll from your project. The way you do this changes from IDE to IDE - refer to http://www.opentk.com/doc for specific instructions.
mono - build using Mono.
debug - build the debug version (e.g. 'build net debug').
clean - delete intermediate object files and projects (reclaim some space, the binaries are not touched). In any case, make sure the OpenTK.dll.config file is copied to the output directory along OpenTK.dll. This file is *required* for OpenTK to work on Linux and Mac OS X.
distclean - delete intermediate and final object files (reclaim all space used during compilation).
vs2005 (vs) - create project files for Visual Studio 2005.
monodev (md) - create project files for MonoDevelop. Build instructions
sharpdev (sd) - as above, for SharpDevelop.
sharpdev2 (sd2) - as above, for SharpDevelop2. If you have Visual Studio 2005/2008 or MonoDevelop 2 (post-beta1), simply open OpenTK.sln in the Build/ folder.
If you wish build from the commandline, install nant (http://nant.sourceforge.net) and execute Build.exe in the Build/ folder.
The resulting binaries are placed in the Binaries/Release or Binaries/Debug folder.

View file

@ -1,5 +1,42 @@
[Legend: complete('+') | WIP('*') | missing('-')] [Legend: complete('+') | WIP('*') | missing('-')]
---------------------
OpenTK 0.9.3 -> 0.9.4
---------------------
+ Bind
+ Emits metadata for GL wrappers: entry point, OpenGL version and extension.
+ Adds license information to the generated bindings.
+ Build
+ Promps for input when no arguments are specified. This means you can now build or create the OpenTK solution without opening a terminal.
+ OpenTK
+ GameWindow
+ Added support for JoystickDevices.
+ Input
+ Added JoystickDevice and IJoystickDriver.
+ Platform
* Implemented joystick support (Windows and Linux only at the moment).
+ Graphics
+ Added typesafe support for GL3 functions and enums: ARB_framebuffer_object, ARB_color_buffer_float, ARB_texture_rg, ARB_texture_ compression_rgtc, ARB_texture_float, EXT_texture_integer, EXT_texture_array
+ Added support for the complete GL3 spec.
* Added support for creating GL3.0-level contexts (Windows only at the moment).
+ Added metadata to the GL wrappers.
+ Implemented GL.SupportsFunction(MethodInfo).
+ Utilities
+ Fixed GL1.1 fallback when GL.BlendColor is not supported.
+ Examples
+ New Extensions viewer that displays the new GL metadata (needs .Net or Mono 2.4+ for full compatibility, but will run on older Mono versions).
+ Moved extensions viewer to the Tests category.
+ General
+ Set mime-type and eol-style properties to the .spec and .tm files.
--------------------- ---------------------
OpenTK 0.9.2 -> 0.9.3 OpenTK 0.9.2 -> 0.9.3
--------------------- ---------------------

View file

@ -1,33 +1,21 @@
The Open Toolkit 0.9.3 Beta Release notes The Open Toolkit 0.9.4 Beta Release notes
This release introduces Mac OS X support, improves the MouseDevice and [ Overview]
GameWindow APIs and fixes several occurences of bitrot in the codebase.
Work will now focus on joystick and GL3.0 support. This release adds Joystick support for Windows and Linux, introduces GL3
functions and tokens and adds support for creating GL3 contexts on Windows.
Some minor TextPrinter bugs have also been fixed.
Please report any issues you may encounter at http://www.opentk.com. Please report any issues you may encounter at http://www.opentk.com.
API changes [API changes]
The MouseDevice.ButtonDown and .ButtonUp events have changed signatures to better No source-level breaking changes were introduced in OpenTK 0.9.4.
conform to the BCL conventions. This is a breaking change. Please change your relevant Binary-level compatibility is not preserved in beta releases.
event handler signatures from:
void ButtonHandler(MouseDevice sender, MouseButton button) GL3 support may expose your applications to driver bugs. A future
{ release will make it possible to choose between GL2- and GL3-
} compatible contexts.
to:
void ButtonHandler(object sender, MouseButtonEventArgs e)
{
}
The MouseDevice.XDelta, .YDelta and .WheelDelta properties have been deprecated and
will be removed at a later version. Please use the Move and WheelChanged events
instead, or track mouse deltas manually.
GameWindow.ExitAsync() is no longer available. Please use GameWindow.Exit(),
instead.

View file

@ -1,52 +1,50 @@
Generic Todos: [General]
+ Correctly implement disposable pattern in all relevant classes (WIP as of 0.3.8). + Split OpenTK.Utilities from the core OpenTK.
+ Investigate startup lag. + Change all public APIs to conform to the class library interface guidelines.
+ Investigate call performance (+-5%) (AMD Venice 3200+ @2250MHz, Vista Business x64, .Net 2.0 x64 optimized build) + Revisit all classes and make sure IDisposable is correctly implemented.
+ Dummy managed call:
+ Inline function: 100000000 calls/second. [OpenTK.Graphics.GL]
+ Function with try: 74500000 calls/second. <--- With try { } finally { } block + Improve performance for functions that return StringBuilders.
- Delegates loaded with reflection: + Inline XML documentation.
+ GL.Vertex2f: 21878992 calls/second. (wrapper->delegate->import->unmanaged)
+ GL.Vertex2fv: 23237133 calls/second. <--- 'fixed' statement. [OpenTK.Graphics.GraphicsContext]
+ GL.ARB.ActiveTexture: 20133679 calls/second. (wrapper->delegate->unmanaged) + Make it possible to choose between GL2 and GL3 contexts.
* GL.ColorPointer: 2870254 calls/second. <--- GCHandle.Alloc and Free + FSAA support (very simple, now that GL3 support has been added.)
+ Delegates loaded with constructors:
+ GL.Vertex2f: 22396040 calls/second. [OpenTK.GLControl]
+ GL.Vertex2fv: 22448539 calls/second. <--- fixed statement + Improve the designer interface.
+ GL.ARB.ActiveTexture: 19920181 calls/second.
* GL.ColorPointer: 2340392 calls/second. <--- GCHandle.Alloc and Free [OpenTK.Input]
* GL.Vertex2fv: 2260000 calls/second. <--- GCHandle.Alloc and Free + Implement joystick support on Mac OS X.
+ Direct DllImport (import->unmanaged) + Implement GameWindow-independent input drivers.
+ glVertex2f_1: 10445125 calls/second. <--- Unmanaged Code Security active + Implement support for multiple mice and keyboards.
+ glVertex2f_2: 24684893 calls/second. <--- Unmanaged Code Security suppressed
+ glVertex2fv: 25896611 calls/second. <--- Unmanaged Code Security suppressed [Examples]
+ Add GL3 examples.
+ Add more comprehensive Graphics and Audio tutorials.
[OpenTK.Compute]
+ Begin the implementation.
[Call performance]
Bind: AMD Venice 3200+ @2250MHz, Vista Business x64, .Net 2.0 x64 optimized build (+-5%):
* Implement Glx bindings. + Dummy managed call:
+ Inline function: 100000000 calls/second.
+ Function with try: 74500000 calls/second. <--- With try { } finally { } block
OpenTK.Graphics todos: + Delegates loaded with reflection:
* Improve performance for functions that return StringBuilders. + GL.Vertex2f: 21878992 calls/second. (wrapper->delegate->import->unmanaged)
* Improve performance for functions that use GCHandles. + GL.Vertex2fv: 23237133 calls/second. <--- 'fixed' statement.
* Inline XML documentation. + GL.ARB.ActiveTexture: 20133679 calls/second. (wrapper->delegate->unmanaged)
* GL.ColorPointer: 2870254 calls/second. <--- GCHandle.Alloc and Free
+ Delegates loaded with constructors:
OpenTK.Platform: + GL.Vertex2f: 22396040 calls/second.
* GLContext class: + GL.Vertex2fv: 22448539 calls/second. <--- fixed statement
+ FSAA support. + GL.ARB.ActiveTexture: 19920181 calls/second.
* GLControl class: * GL.ColorPointer: 2340392 calls/second. <--- GCHandle.Alloc and Free
+ Improve the designer interface. * GL.Vertex2fv: 2260000 calls/second. <--- GCHandle.Alloc and Free
+ Direct DllImport (import->unmanaged)
+ glVertex2f_1: 10445125 calls/second. <--- Unmanaged Code Security active
OpenTK.Input todos: + glVertex2f_2: 24684893 calls/second. <--- Unmanaged Code Security suppressed
+ Implement Joystick input. + glVertex2fv: 25896611 calls/second. <--- Unmanaged Code Security suppressed
Examples:
+ Add more Tutorials and WinForms examples.
OpenTK.Audio todos:
+ Ogg loader.

View file

@ -29,5 +29,5 @@ using System.Runtime.InteropServices;
// Build Number // Build Number
// Revision // Revision
// //
[assembly: AssemblyVersion("0.9.9.4")] [assembly: AssemblyVersion("0.9.9.5")]
[assembly: AssemblyFileVersion("0.9.9.4")] [assembly: AssemblyFileVersion("0.9.9.5")]

View file

@ -29,5 +29,5 @@ using System.Runtime.InteropServices;
// Build Number // Build Number
// Revision // Revision
// //
[assembly: AssemblyVersion("0.9.1.0")] [assembly: AssemblyVersion("0.9.4.0")]
[assembly: AssemblyFileVersion("0.9.1.0")] [assembly: AssemblyFileVersion("0.9.4.0")]

View file

@ -29,5 +29,5 @@ using System.Runtime.InteropServices;
// Build Number // Build Number
// Revision // Revision
// //
[assembly: AssemblyVersion("0.9.3.0")] [assembly: AssemblyVersion("0.9.4.0")]
[assembly: AssemblyFileVersion("0.9.3.0")] [assembly: AssemblyFileVersion("0.9.4.0")]

View file

@ -31,5 +31,5 @@ using System.Runtime.InteropServices;
// //
// You can specify all the values or you can default the Revision and Build Numbers // You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below: // by using the '*' as shown below:
[assembly: AssemblyVersion("0.9.3.0")] [assembly: AssemblyVersion("0.9.4.0")]
[assembly: AssemblyFileVersion("0.9.3.0")] [assembly: AssemblyFileVersion("0.9.4.0")]

View file

@ -29,5 +29,5 @@ using System.Runtime.InteropServices;
// Build Number // Build Number
// Revision // Revision
// //
[assembly: AssemblyVersion("0.9.3.0")] [assembly: AssemblyVersion("0.9.4.0")]
[assembly: AssemblyFileVersion("0.9.3.0")] [assembly: AssemblyFileVersion("0.9.4.0")]