[ruby-opengl-devel] Project status

Jan Dvorak jan.dvorak at kraxnet.cz
Sun Feb 18 23:35:03 EST 2007


On Wednesday 14 February 2007 02:52, Jan Dvorak wrote:
> Regardless of any of this, i already started implementing the few 1.0 and
> 1.1 functions that are currently missing from the bindings, and i'll put
> the code on my ftp when i'll check everything is working ok (i can also
> provide patches if needed).
Sorry for the delay, here it is:

http://www.gleamless.org/tmp/ruby-opengl-update.tar.gz 
- just the changed files
http://www.gleamless.org/tmp/ruby-opengl.patch.gz
- patch against last SVN
http://www.gleamless.org/tmp/funclist.txt
- list of functions added

filelist:
ext/common/rbogl.[c,h]
- i've added more helper functions for other GL types
ext/common/gl-enums.h
- these are all OpenGL enums, (so we don't have to depend on what is specified 
in user's gl.h), including extensions generated from enum registry 
http://www.opengl.org/registry/api/enum.spec and 
http://www.opengl.org/registry/api/enumext.spec
for internal use by C code (all modules)
ext/gl/gl-enums.c
- all the enums as above, defined as ruby constants
ext/gl/gl-1.0-1.1.c 
- most code copy-pasted from original gl.c, added functions as per OpenGL 2.1 
spec. The only function not supported form is glGetTexImage, while it's base 
functionality is trivial to implement, the allocated size needed for return 
buffer is subject to all pixel packing settings - the code i've tried was 
long and didn't give proper results in all cases, so i postponed it for now. 
Also, glGetPointerv doesn't support returning pointers to selection and 
feedback buffers, for obvious reasons. Other than that, OpenGL 1.0 and 1.1 
support should be complete. I've fixed some minor things in the already 
present functions (some missing sanity checks, added v1.3+ enums to switch 
statements etc.).
ext/gl/gl.c
- this is gateway to calling specific initializations in gl-XXX files
ext/gl/gl-1.2.c
- contains the opengl 1.2 functions that were implemented in svn (copy-pasted 
only), for now, commented out, as i still didn't get reply for my previous 
email (the dynamic loading thing).
ext/glu/glu.c 
- changed call to ary2* as the name changed in rbogl.c/h, also renamed init 
function to Init_glu, as the former initialize didn't work in SVN.

I've tried to match the existing coding style (whether this is good i'll leave 
to you to judge :) ). As always, any comments are welcome.

Jan


More information about the ruby-opengl-devel mailing list