[plt-scheme] New sgl library
The sgl library supports OpenGL programming for PLT Scheme.
I have re-written the exp-tagged version of the sgl library using the foreign
function interface. Existing programs that use sgl should work with a few
minor changes.
Changes include:
Support for OpenGL version 1.5.
The gl-unsafe.ss module is gone, and the entire supported GL interface is
included in gl.ss. The gl.ss module is now an unsafe interface, and makes no
attempt to check array lengths.
The gl-vectors.ss module now uses the cvector functionality of the foreign
function interface instead of supporting its own C-language-like arrays. The
new module provides an interface similar to the old, but many of its
functions can work on any gl-vector (which are all just cvectors now). For
example, gl-vector-ref replaces all of gl-uint-vector-ref,
gl-double-vector-ref, etc.
Some OpenGL functions that take in vector arguments for return values, such as
glGetIntegerv, now take in either a length parameter instead, or no argument
in that position at all, and return a vector.
Please consult the documentation for the new library's full details.
I've also added a simple 3D checkers game to the games collection.
-Scott Owens