2014-08-09 Shiro Kawai * release 0.6 2014-08-01 Shiro Kawai * src/gen-ptrs.scm, src/glext-lib.stub, src/glut-lib.stub: Fixed build on OSX. 2014-05-24 Shiro Kawai * win32/glew-1.10.0, configure.in, src/Makefile.in, src/gauche-gl.h, src/gen-ptrs.scm, src/glu-lib.stub, src/glut-lib.stub: Incorporate GLEW (http://glew.sourceforge.net/) to use newer features of GL on MinGW. The GL header files that come with MinGW is very old, and it is too much hassle to ask developers to update gl.h manually. 2014-04-25 Shiro Kawai * lib/gl/simple/viewer.scm: Changed callback API to pass viewer state in f32vector. (A hack is in place to support legacy zero-argument display callback for the backward compatibility, but we'll drop it in future). 2014-04-22 Shiro Kawai * lib/gl/simple/viewer.scm: Start supporting 2D view. 2013-05-28 Shiro Kawai * lib/gl/simple/viewer.scm (quit-loop): Try not to terminate the primordial thread while other threads can be running. 2013-05-27 Shiro Kawai * src/glext-abi.scm: Updated up to GL4.1. * src/extract-abi.scm: Some fixes to parse the newer glext.h 2012-08-16 Shiro Kawai * src/glcase.scm: Added to factor out the common pattern to dispatch polymorphic Scheme call to monomorphic C API. 2012-08-09 Shiro Kawai * src/glext-lib.stub (gl-get-convolution-parameter): Added. 2011-08-05 Shiro Kawai * release 0.5.1 2011-07-31 Shiro Kawai * src/gen-ptrs.scm, src/gen-syms.scm: Adapted to the change of gauche.cgen in Gauche 0.9.2. 2011-02-28 Shiro Kawai * Repository moved to git. 2010-12-11 Shiro Kawai * release 0.5 2010-12-03 Shiro Kawai * */Makefile.in: Install to site-specific directories instead of Gauche system directories (the new policy since Gauche 0.9.x). * INSTALL.in: Updated. 2010-11-26 Shiro Kawai * src/gl-lib.stub (gl-index): This one was missing. Added. 2010-11-25 Shiro Kawai * */Makefile.in, configure.in: Quote $GAUCHE_CONFIG etc, so that they work even spaces are included in the path of these programs. * Makefile.in: Added install-examples target that installs some examples into ${prefix}/examples. This is not normally called, but on MinGW, it will be useful to include examples in the binary distribution. 2010-11-21 Shiro Kawai * win32/freeglut-2.6.0-3: Included precompiled binary of freeglut for MinGW, for the convenience. By ./configure --with-glut=mingw-static, you can build gl.glut with freeglut statically linked to libgauche-glut.dll. This will free you from carrying around freeglut.dll. * configure.in: Check for MinGW. 2010-11-20 Shiro Kawai * AUTOCONF, DIST: Removed AUTOCONF; it does harm on windows where command search is case insensitive. './DIST gen' runs autoconf. * examples/glbook/example10-1.scm, examples/glbook/example13-6.scm, examples/glbook/example13-7.scm: Added missing gl-flush; lacking of it may cause some systems to hang. 2009-03-04 Shiro Kawai * src/*.stub: Updated uses of obsoleted (return "...") to (call "..."). 2008-10-15 Shiro Kawai * src/math3d-lib.stub (quatf-set4!): Added. 2008-06-10 Shiro Kawai * src/gauche-math3d.c (Scm_AxesToQuatfv): clamp the cos(theta) value to avoid getting NaN from rounding error when we take acosf. 2008-06-09 Shiro Kawai * src/math3d-lib.stub (f32vector->matrix4f!): added. (matrix4f->rotation!, matrix4f->translation!): changed the argument order to be consistent of other linear update APIs. 2008-06-08 Shiro Kawai * lib/gl/simple/viewer.scm: changed to keep callback and local state for each window individually. APIs may take optional window name. Without explicit window name, those APIs touches the global default settings, which will affect the windows created after the call. * src/gauche-glut.c (Scm_GlutRegisterCallback), src/gauche-glut.h, src/glut-lib.stub (glut-display-func etc): Rewrote to support per-window callbacks properly---the old version kept one closure per callback, so it was impossible to register different callbacks for multiple windows, and also it worked incorrectly since the last registered closure were called for all windows. Now we manage closure vectors associated to each window. 2008-06-06 Shiro Kawai * lib/gl/simple/image.scm, lib/gl/simple-image.scm: Moved gl.simple-image to gl.simple.image. * lib/gl/simple/viewer.scm: added. * examples/simple/minimum-viewer.scm: added. 2008-06-05 Shiro Kawai * src/gauche-math3d.c, src/gauche/math3d.h (Scm_VectorsToQuatf, Scm_AxesToQuatf): renamed from Scm_{Two|Four}Vectors... * src/math3d-lib.stub (vectors->quatf, axes->quatf): renamed accordingly. * repository migrated to subversion. * src/math3d-lib.stub (quatf-conjugate!, 4vectors->quatf, 4vectors->quatf!): added. 2008-06-04 Shiro Kawai * src/glext-lib.stub (gl-active-texture, gl-client-active-texture): added sans '-arb' versions, which were added in GL1.3. * src/math3d-lib.stub (vector4f-norm, matrix4f->translation, matrix4f->translation!, 2vectors->quatf, 2vectors->quatf!, vector4f-mul, vector4f-mul!, vector4f-div): added. 2007-08-05 Shiro Kawai * src/gl-lib.stub (gl-tex-coord-pointer, gl-index-pointer): Wrong GL functions were called. 2007-08-04 Shiro Kawai * src/glext-lib.stub: Added support of the framebuffer object extension. * src/gl-lib.stub (gl-tex-image-2d): allow passing #f to the texture texels array so that it is possible to allocate texture memory but not initialize it. It is useful when you want to render to the texture. 2007-07-09 Shiro Kawai * release 0.4.4 * configure.in, src/gauche-gl.h, src/gauche-gl.c: Fixed a problem when using GL extensions under cygwin. (Patch from Takashi Ishizaki). 2007-01-17 Shiro Kawai * release 0.4.3 2007-01-15 Shiro Kawai * src/gauche-gl.c: fixed bugs in finalizers of GLU objects, reported by Jens Thiele. * src/glut-lib.stub, cg/cg-lib.stub: adapted the new Scm_ApplyRec API of Gauche. 2006-11-11 Shiro Kawai * release 0.4.2 2006-11-09 Shiro Kawai * INSTALL.in, doc/extract: moved from using escm to generate INSTALL and INSTALL.eucjp, to avoid complication about character encodings. Using 'extract' script instead. * src/gauche/math3d.h (SCM_VECTOR4F_NORMV): use sqrtf instead of sqrt for float operation. * examples/gl-plot.scm: added. contribution from Issac Trotts. 2006-11-08 Shiro Kawai * src/gen-ptrs.scm (main): typo fix (pointed by Erik Greenwald) * src/gauche-gl.c (Scm_GLGetProcAddress): try glXGetProcAddressARB first, before glXGetProcAddress, since ARB version is the 'proper' one. See the comment in the source for the details. 2006-03-04 Shiro Kawai * configure.in: drop 'powerpc' from the check of OSX, for we have x86 OSX now. 2005-11-05 Shiro Kawai * release 0.4.1 2005-08-30 Shiro Kawai * lib/Makefile.in: gl/simple-image.scm wasn't installed. * cg/Makefile.in: gl/cg.scm wasn't installed. 2005-08-01 Shiro Kawai * src/configure.in, Makefile.ins: adapted to the new extension building scheme (requires Gauche-0.8.6). 2005-07-02 Shiro Kawai * src/gauche-gl.c (Scm_GLGetProcAddress): typo fix (Pointed by Takashi Ishizaki). * src/glext-lib.stub (gl-shader-source-arb): fix code that had declaration after expressions, causing older cc fail. 2005-06-30 Shiro Kawai * release 0.4 * src/gauche-gl.h, src/gauche-gl.c, configure.in: Make Scm_GLGetProcAddress work on MacOSX by using glutGetProcAddress (Patch provided by Issac Trotts.) 2005-06-14 Shiro Kawai * cg/*, examples/cg/* : Added NVidia's Cg Toolkit binding written by Issac Trotts. * configure.in, Makefile.in, README, INSTALL.esc: changed accordingly. 2005-06-10 Shiro Kawai * src/gen-ptrs.scm : use different name for the function ptr variables from the GL function name, to avoid possible conflict with gl.h. Also improved the #ifdef guards around typedefs. * src/glext-lib.stub : changed some APIs for consistency (e.g. gl-uniform*). * examples/slbool/* : fixed accordingly. * doc/gauche-gl-ref.texi : documented most supported GL and GLU APIs. 2005-06-08 Shiro Kawai * lib/gl/simple-image.scm : added. * src/glext-lib.stub, src/gl-lib.stub: more API support. * examples/images/* : added. 2005-06-05 Shiro Kawai * src/glext-api.scm: API definition of GL extension. We no longer rely on glext.h and generate various files from this file, since we cannot count on the client's glext.h which may likely be out of date and cause so much headache. * src/gen-syms.scm, src/gen-ptrs.scm : from glext-api.scm, these scripts generates gl-syms.h, gl-ptrs.h and gl-syms.c, which define all GL extension enums and function pointers. * src/gl-syms.stub : removed, for the info is now generated from glext-api.scm. * src/gauche-gl.c (Scm_GLGetProcAddress): wrapper of glXGetProcAddress or wglGetProcAddress. * src/glext-lib.stub : all calls to GL extensions are now through function pointers, and ENSURE macro sets the pointer by Scm_GLGetProcAddress. * src/gauche-gl.h, src/gauche-gl.c, src/gl-lib.stub, lib/gl.scm: Added type to represent GLboolean[]. Changed gl-get-boolean(!) to deal with rather than . THIS IS AN INCOMPATIBLE CHANGE. Note that a single value return of gl-get-boolean also changed to return a boolean value rather than an integer. * doc/gauche-gl-ref.texi: adding more stuff. 2005-06-04 Shiro Kawai * lib/gl.scm : added gl-extension-supported?, gl-version * src/glext-lib.stub : added more bindings on vertex attributes. 2005-06-01 Shiro Kawai * examples/slbook : added OpenGL shading language book examples. * src/gauche-gl.h : define GL_GLEXT_PROTOTYPES to include gl extension procedure declarations properly. (In futuer, we should use function-pointer-finding way instead of relying on compile-time availability of extensions). * src/gauche-gl.c (Scm_GLGetProcAddress): added #ifdefs to compile properly. * src/glext-lib.stub : more bindings (patch provided by Issac Trotts). 2005-05-30 Shiro Kawai * src/glu-lib.stub (glu-build-2D-mipmaps): added (provided by Issac Trotts) 2004-08-21 Shiro Kawai * lib/gl/util.scm : added * src/glext-lib.stub : added ARB extension bindings. * src/gl-lib.stub, src/gl-syms.stub : moved ARB extension stuff to glext-lib.stub * src/Makefile.in : added glext-lib.stub 2004-07-05 Shiro Kawai * doc/gauche-gl-ref.texi : adding docs 2004-05-16 Shiro Kawai * configure.in : 0.3.2_pre1 2004-04-23 Shiro Kawai * Makefile.in, */Makefile.in, configure.in : adapted to the new packaging/installation scheme. 2003-12-16 Shiro Kawai * release 0.3.1 2003-12-04 Shiro Kawai * src/gauche-gl.c (Scm_Init_libgauche_gl) : adapted to Gauche-0.7.3 change 2003-11-11 Shiro Kawai * src/gauche-math3d.c (Scm_Matrix4fDecomposev): fixed a bug that referenced wrong shear vector value during calculation. 2003-10-14 Kimura Fuyuki * configure.in : fixed a bug that has prevented the configure script from finding glext.h 2003-10-09 Shiro Kawai * */Makefile.in : cleaned up install rules by using mkinstalldirs. 2003-10-04 Shiro Kawai * release 0.3 * configure.in, lib/gl.scm, lib/gl/glut.scm, lib/gl/math3d.scm, src/* : adapted to Cygwin - works with Cygwin 1.5.5/opengl 1.1.0-6. 2003-07-14 Shiro Kawai * */Makefile.in : added $(DESTDIR) to install target directories 2003-03-07 Shiro Kawai * doc/extract (filter): escaped '{' and '}' in regexp. 2003-02-10 Shiro Kawai * release 0.2.2 * doc/extract : use the newest extract so that the monolingual docs can be genarated by gosh with any internal encodings. 2003-02-07 Shiro Kawai * src/gauche-math3d.c (Scm_TRSToMatrix4fv): The order of multiplication was wrong (was TSR, not TRS). So as in Scm_TQSToMatrix4fv. 2003-01-29 Shiro Kawai * various files: applied patch from Yokota Hiroshi * examples/gears.scm : added (ported by Yokota Hiroshi) 2003-01-19 Shiro Kawai * lib/gl/math3d.scm (call-with-iterator): fixed typos. 2003-01-07 Shiro Kawai * src/math3d-lib.stub (matrix4f->rotation!): returns axis and angle, as matrix->rotation does. 2003-01-05 Shiro Kawai * src/gauche-math3d.c, src/math3d-lib.stub : added more matrix ops: determinant, inverse, euler angle conversion, matrix decomposition. added matrix->quaternion/quaternion->matrix conv. 2002-12-15 Shiro Kawai * release 0.2.1 * configure.in : add -lX11 -lXext to link gauche-gl if we're on X11 systems. FreeBSD seems to need it, and it won't do harm as far as we're on X11. * src/gauche-gl.c : add brackets around GLU object classes for consistency. * src/Makefile.in : install math3d.h under gauche subdirectory. 2002-11-12 Shiro Kawai * INSTALL.esc : added note about compiling on FreeBSD (based on the report from Kimura Fuyuki). 2002-10-23 Shiro Kawai * doc/Makefile.in : obtain the install path of info files from gauche-config. 2002-10-22 Shiro Kawai * lib/gl/math3d.scm : added reader ctor for vector4f-array and point4f-array 2002-10-14 Shiro Kawai * release 0.2 2002-10-08 Shiro Kawai * doc/* : start writing texinfo document. 2002-09-30 Shiro Kawai * src/glu-lib.stub : added glu-project! and glu-un-project!, the linear update version of glu-project and glu-un-project (thus avoid allocation) 2002-09-29 Shiro Kawai * src/gl-lib.stub (gl-mult-matrix): added. * src/math3d-lib.stub : added some more fns. 2002-09-28 Shiro Kawai * src/gauche-math3d.c, src/gauche/math3d.h, src/math3d-lib.stub : renamed 3dvector -> vector4f etc. 2002-09-27 Shiro Kawai * src/gl-lib.stub, lib/gl.scm : let some gl calls accept math3d object * src/math3d-lib.stub : added. 2002-09-26 Shiro Kawai * src/gauche-math3d.c, src/gauche/math3d.h, lib/gl/math3d : adding gl.math3d module 2002-09-22 Shiro Kawai * release 0.1.6 * src/gl-lib.stub : added gl-select-buffer and gl-feedback-buffer. * examples/glbook/ : more examples are added. added code to terminate the demo by ESC key to all the examples. added 'run' script that runs through all the examples. 2002-09-12 Shiro Kawai * src/gl-lib.stub : allow gl-call-lists to take a string as either signed or unsigned byte-array. It's convenient to draw a charater string using display lists, even though it only works for ASCII chars. Also added more texture-related functions. 2002-09-02 Shiro Kawai * release 0.1.5 2002-09-01 Shiro Kawai * src/gl-syms.stub : applied a patch for MacOS X contributed by KIMURA Shigenobu. 2002-08-30 Shiro Kawai * configure.in, src/Makefile.in, src/gauche-gl.h, src/gauche-glut.c, src/glu-lib.stub, src/glut-lib.stub : applied a patch for MacOS X contributed by KIMURA Shigenobu. 2002-08-29 Shiro Kawai * src/gauche-gl.c : refactored pixel data format check as Scm_GLPixelDataCheck. * src/gl-lib.stub : added some GL1.2 and extension procs. * examples/glbook/example8-4.scm : renamed from example8-3.scm 2002-08-27 Shiro Kawai * examples/glbook/example8-3.scm : added 2002-08-25 Shiro Kawai * src/gl-syms.stub, src/gauche-gl.c : #ifdef-ed most of extension symbols, as well as OpenGL 1.1, 1,2 and a part of 1.3 features. * src/glut-lib.stub : fixed a long-missed bug in glut-init that assumed the passed argument list lacks argv[0]. 2002-08-17 Shiro Kawai * src/gl-lib.stub : added gl-call-lists * src/gauche-glut.c, src/glut-lib.stub : rewrote using define-enum * examples/glbook/example7-[125].scm : added 2002-08-16 Shiro Kawai * src/glstate.scm: added code to generate #ifdef swithc for OpenGL1.2 state variables. * examples/glbook/example6-[345].scm: added 2002-07-31 Shiro Kawai * release 0.1.4 * src/*.stub : updated accodring to the new syntax of genstub. 2002-07-23 Shiro Kawai * src/*.stub : updated accodring to the new syntax of genstub. 2002-07-21 Shiro Kawai * src/gauche-gl.h : use SCM_CLASS_DECL macro instead of direct declaration of "extern ScmClass". Preparation for cygwin port. 2002-07-18 Shiro Kawai * release 0.1.3 * src/gl-syms.stub, src/glu-lib.stub: #ifdef-ed out GL_ALL_CLIENT_ATTIB_BITS and GLU_INCOMPATIBLE_GL_VERSION for they are not supported on nVidia linux driver (thanks to Karl Trygve Kalleberg for pointing this out). * src/glstate.scm : commented out gl_polygon_offset_bias_ext for it nost on nVidia linux driver (thanks to Karl Trygve Kalleberg for pointing this out). * configure.in : added check of GL/glext.h (thanks to Karl Trygve Kalleberg for pointing this out). * src/gauche-gl.h : include GL/glext.h if available. * example/* : removed escapes of uppercase symbols; they're ugly, and it's been some time since Gauche became case-sensitive. * src/gl-syms.stub : splitted symbol definitions from gl-lib.stub. 2002-02-14 Shiro Kawai * release 0.1.2 * examples/glbook/*.scm : fix some files that require (use srfi-4). 2002-02-11 Shiro Kawai * various files : adapted to Gauche 0.5.1 new extension protocol. 2001-12-21 Shiro Kawai * release 0.1.1 * src/Makefile.in : adapted to Gauche-0.4.11 2001-11-21 Shiro Kawai * src/glu-lib.stub : added more Nurbs support fns. 2001-11-20 Shiro Kawai * src/gauche-gl.h, src/gauche-gl.c, src/glu-lib.stub : added GLU quadrics, nurbs and tesselators (partially). 2001-10-19 Shiro Kawai * examples/mandelbrot.scm : added texturing sample. 2001-10-15 Shiro Kawai * examples/glbook/ : added example6-2 2001-10-14 Shiro Kawai * release 0.1