v0.60 (mini-thesis release)

v0.61 (workshop release)
  - added: rgl.sprites
  - added: fps counter
  - added: autoUpdate, modified win32 mainloop, on hide, autoUpdate disabled, on show enabled
  - modified material: added alpha vector

v0.62
  - modified sphere set
  - support R color strings
  - use system.file( <subpath>, package="rgl" ) in examples to retrieve texture files
  - rewrote R code : 
    - clear enum types
    - vertex vector datatype (internal representation matrix)

v0.63
  - api: added rgl_init, rgl_quit: explicit client initialization
  - added setup.bat: build setup for windows
  - win32 setup: mingw compiler
  - win32 setup: visual c++ compiler through gui environment

v0.64
  - autoconf build system
  - moved textures to inst/ directory
  - x11 port
  - win32/vc: fixed fpu control word precision to remain on 64 bit
    links with fp10.obj
  - changed texture mapping t coordinate for Surface node

v0.64-2
  - rgl.quads: enum id was broken, fixed ("quads" -> "quadrangles")
  
v0.64-3
  - configure.ac: X11 library path broken, fixed
  - x11gui: glXChooseVisual part fixed
  - code cleanup: rglview.h  
  - added: man/maintainer.Rd maintainer information

v0.64-4
  - manual update
  - aquired valid CRAN package status, 
    rcmd check runs through with 2 WARNINGS 
    (acording to latex, and codoc)
  - uploaded to cvs

v0.64-5
  - MacOS X/X11 port

v0.64-6
  - updated build system: added setversion.sh 
  - with MinGW version 3.0.1 pixmap loading does work
  - project.mk , win32.mk and x11.mk in src/build changed
    now a single variable MODS will extend.  
  - MinGW build system changed.
    rgl.dll now contains an R compilant Resource information
    generated by R perl script
  - bug fix: R 1.8.0/win32 does not detach packages when quit
    it is safe now to call rgl_quit and lib_quit multiple times
    win32lib.cpp: added dllmain that calls rgl_quit on process exit    
  - added core support for devcpp IDE

v0.64-7
  - added mouse capturing
  - rgl.sprites 'radius' bug fixed
  - memory leak bugfix: texture objects are now AutoDestroy and used through Ref's
  - resource management improvment: pixmaps gets free'd when they become unused
    e.g. texture objects are created.
  - no limitations on pixmap sizes
  - mipmap support
  - support for different texture minification and magnification filters

v0.64-8
  - build bugfix : removed rgl/src/Makefile
  - updated configure to check and setup LDFLAGS for OpenGLU library

v0.64-9
  - MacOS X 'Panther' G5 fix for OpenGL library loading in .first.lib
  - removed lpng and zlib from source tree 
  - support for automatic downloading of zlib and lpng on win32 
  - added demo directory with several examples using demo(rgl)

v0.64-10
  - updated .C() calls using PACKAGE="rgl"
  - updated Maintainer.mk using correct zlib version
  - improved dynamic unload using library.dynam.unload()
  - conditional macos x darwin code in .First.lib()

v0.64-11
  - removed several redundant semicolons, required by gcc 3.4 ansi-pedantic mode.
  - win32: uses R's zlib and libpng sources
  - win32: added virtual destructor in Win32GUIFactory (removes warning)
 
v0.64-12
  - cran bugfix: permissions of cleanup fixed.

v0.64-13
  - DESCRIPTION fix: moved R 1.41 -> R 1.4.1 dependency

v0.65
  - simplified build system: uses 'R' build system
  - added generic visualization/rendering interface (R3D)
  - text justification from 0 to 1
  - added primitive type: linestrips
  - fixed rgl.bringtotop, added stay option (win32)
  - added 4x4 matrix functions from djmrgl
  - added rgl.user2window and rgl.window2user functions
  - added user-selectable mouse handlers
  - added selection mouse handler
  - added trackball mouse handler
  - added z-distance sorted rendering of alpha-blended faces 
  - added gl2ps patch ( contributed by Albrecht Gebhard )
  - added port: native Mac OS X Carbon
  - bugfix: rgl.close() , rgl.quit() crashed on X11 occasionally.
  - generalized rgl.surface() to allow surface over any coordinate plane.
  - added r3dDefaults variable to allow user to set defaults
  - added environment texture-mapping

v0.66
  - added "all" and "viewpoint" to rgl.clear and clear3d
  - added static libpng build support and user customizable prefix (unix)
  - used xyz.coords in all functions taking x, y, z coordinates, allowing
    matrix or dataframe arguments (among others)
  - added par3d(skipRedraw=TRUE) to allow drawing to be done without
    being rendered
  - fixed display list memory leak when drawing shapes (e.g. spheres)
  - Changes for compatibility with strict enforcement of file naming rules in R 2.3.0.

v0.67
  - added support for png files with palettes, and grayscale pngs with 1, 2 or 4 bits 
    per pixel
  - added "ignoreExtent" option to par3d:  objects plotted when this is true
    are ignored when calculating the bounding box
  - added axis3d, axes3d, box3d, mtext3d, title3d functions from djmrgl for 
    annotating plots.
  - added plot3d high level plot function
  - added material3d, which can both set and query material properties; changed
    most *3d functions so they leave material invariant across calls.
  - changed open3d() to set background and material defaults
  - added aspect3d to control the aspect ratio of the bounding box.
  - added xAxis, yAxis and zAxis mouse modes, set zAxis as r3d default.
  - added persp3d function
  - changed error messages to go through REprintf in X11 and OSX
  - fixed segfault if rgl_init failed
  - converted type of viewport arg in user2window and window2user calls
  - if the rgl_init call fails, the package will still load with a warning (but
    most function calls will result in errors).
  - added par3d("scale") to handle aspect3d operations internally.
  - added ellipse3d() generic and methods for drawing confidence ellipsoids
  - added decorate3d() to draw all the decorations, plot3d.qmesh3d() method.
  - changed zoom to use ratio scale over larger range
  - fixed bug causing jump after resize in Mac OSX (and maybe other platforms)  
  - rgl.primitive now does sanity checks on inputs

v0.67-2
  - minor correction

v0.68
  - fixed sphere drawing so spheres are spheres regardless of par3d("scale")
  - added type="s" to plot3d to draw spheres
  - fixed handling of "..." in axis related functions
  - added full MDI support
  - removed use of List and ListIterator internally
  - fixed handling of axes and boxes when a coordinate had zero extent
  - changed rgl.viewpoint default to be compatible with r3dDefaults
  - added id return values to primitives and higher level functions, 
    and to rgl.pop(); added rgl.ids() to report on them.
  - updated gl2ps to version 1.3.1, adding support for svg and pgf output formats.
  - added grid3d(), added nticks argument to bbox3d, axis3d and axes3d.
    
v0.69
  - persp3d partially ignored add=TRUE
  - plot3d.qmesh3d did not return result
  - allow selection to use any button
  - allow NA in primitives, surfaces, texts, and sprites
  - report error in OSX if the wrong configure options were used.
  - display was not being updated properly in OSX
  
v0.70
  - OSX now builds two libraries, one for AGL, one for X11
  - resolve entry points at load time, not call time
  - updated gl2ps to version 1.3.2
  - fixed bug in rgl.postscript in Linux, added text support to it
  - tweaked positioning of labels in bounding box decoration
  - snapshot3d wasn't being exported, and snapshots were from the back buffer
  - fixed bug that could cause crash on shutdown
  - moved this file (ChangeLog) to inst directory, so it will be installed,
    and added code to display it to the rgl help topic.

v0.71
  - changes to configure script from Laszlo Kajan and Brian Ripley:  should 
    now be much more portable
  - removed deprecated OSX font setting calls
  - texture properties are now returned by material3d()
  - allowed normals and texture coordinates to be specified in triangles, quads and surfaces
  - normals may be specified in qmesh objects, but (at present) subdivide removes them
  - material3d() now preserves the values of unspecified parameters (as documented,
    but not previously functioning)
  - clear3d() can now reset material properties to the defaults, and
    open3d() does this.
  - minor fix for gcc 4.3 compatibility
  - minor fix for R 2.5+ compatibility
  - allowed more general surfaces to be plotted by rgl.surface, surface3d and 
    persp3d, by specifying matrices for x and y coordinates
  - added world map texture, used in example(persp3d)
