home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 2005 March
/
CMCD0305.ISO
/
Software
/
Freeware
/
Utilitare
/
spherexp
/
SphereXP.0-81.exe
/
Tao.OpenGl.Readme.txt
< prev
next >
Wrap
Text File
|
2004-11-28
|
2KB
|
67 lines
Tao.OpenGl 1.5.0.3
Copyright ⌐2003-2005 Tao Framework Team
http://www.taoframework.com
All rights reserved.
Tao.OpenGl is an OpenGL binding for .NET, implementing GL 1.5 and GLU 1.3.
=== OpenGl DLL and compilation portability ===
Due to some issues with the binding generation that I've yet to work
out, the extension entry points in a Tao.OpenGl.dll built for WIN32 is
not portable to Linux/Mono. To make matters worse, a clean
Tao.OpenGl.dll build can't happen on Linux/Mono, because of the lack
of ILMerge.exe on Linux. It's acceptable to build a Tao.OpenGl.dll on
windows that's built for Mono and then copy that and use it on Mono.
Hopefully this issue will be resolved soon.
=== Extensions and Tao ===
[To be written. Comments/problems to vladimir@pobox.com .]
In a nutshell, you'll use the Tao.OpenGl.GlExtensionLoader class.
To check for support without loading:
bool vboSupported = GlExtensionLoader.IsExtensionSupported("GL_ARB_vertex_buffer_object");
or to check and load:
bool vboSupported = GlExtensionLoader.LoadExtension ("GL_ARB_vertex_buffer_object");
then, just use
Tao.OpenGl.Gl.glGenBuffersARB(1, out buf);
Tao.OpenGl.Gl.glBindBufferARB(target, buf);
etc.
Multiple context is supported; you have to create a new ContextGl class:
Tao.OpenGl.ContextGl cgl = new Tao.OpenGl.ContextGl();
then pass this as the first argument to IsExtensionSupported/LoadExtension:
GlExtensionLoader.LoadExtension (cgl, "GL_ARB_vertex_buffer_object");
And then call
cgl.glGenBuffersARB(1, out buf);
etc.
It's the application's responsibility to make the appropriate context
current before calling GlCore or Gl methods on a ContextGl instance.
To load all extensions:
GlExtensionLoader.LoadAllExtensions();
Change Log:
1.5.0.3 - August 23, 2004:
Rewrote OpenGl layer to generate code directly from ARB
spec files; also implemented new extension loading/access mechanism.
1.5.0.0 - April 20, 2004:
Initial release. Special thanks to Manfred Doetter for his work
implementing almost all of the extensions.