
* Jul 2002 : Soya3D 0.1
  * First release

* Dec 2002 : Soya3D 0.2
  * Second release
  * Landscape / heightmap
  * More tutorial lessons
  * Lots of bugfixes

* Jan 2003 : Soya3D 0.2.1
  * land: bugfix, faster raypicking, new function get_true_height
  * fixed bugs with camera as widget
  * raypicking on morph
  * material sorting to speed up rendering process
  * portal reviewed

* Fev 2003 : Soya3D 0.3
  * INCOMPATIBLE CHANGES !!! ALL SDL* and SDL_* constant have been
    renamed without the SDL prefix
  * INCOMPATIBLE CHANGES !!! All soya saved file MUST have a ".data"
    extension (because of CVS). Renaming your older file is OK: the
    file format itself have not changed, (except for materials, see
    below)
  * INCOMPATIBLE CHANGES !!! materials file-format have changed !
  * Can be used along with PyGame !!!!!!
  * Animations (see tutorial lesson 11)
  * Faccutter module, to improve your shape by adding more faces
    (see tutorial lesson 114 and 115)
  * A main loop with FPS regulation (see soya.idler, and tutorial
    lesson 013)
  * Widgets now have begin_round, advance_time and end_round methods

* March 2003 : Soya3D 0.3.1
  * Faster particle systems
  * Bugfixes:
    * Directional lights
    * Static lights
    * Lesson 104 was not updated after the new image object

* March 2003 : Soya3D 0.4
  * Cal3D integration! Cal3D is a blasting 3D animation library.
    See tutorial lesson 014, and http://cal3d.sourceforge.net
  * Better Blender exporter:
    * Easier to use
    * Import subsurf
    * Autocreate material if needed
  * Morph (see lesson 012 for a smiling Tux). Though as we have now
    integrated Cal3D, morph are quite deprecated... :-(
    Cal3D offers much more features.

* May 2003 : Soya3D 0.4.2
  * Added manpage for Soya editor
  * Bugfixes:
    * ./configure failed to find Cal3D

* May 2003 : Soya3D 0.4.3
  * Removed fucking configure -- configuration is now hardcoded
    in config.py ; edit this file if needed (normally it should
    be right).

* July 2003 : Soya3D 0.5
  * New C rendering engine (20-30% faster)

* July 2003 : Soya3D 0.5.1
  * Cal3D support was disabled in 0.5
  * Blender exporter upgraded for Blender 2.28

* December 2003 : Soya3D 0.6
  * Soya 0.6 file format is different from Soya 0.5 file format.
    See convert_to_new_format for converting your files.
  * Cell shading !!!
  * Shadows !!
  * Water cube !
  * It is now possible to attach a world to a Cal3D bone
    (see tutorial lesson 015)
  * Better Blender exporter, and Blender exporter for Cal3D available
    sperately (search about blender2cal3d.py)
  * Morphs have been removed (they were deprecated in favour to Cal3D
    support), and so there is no longer any tutorial lesson 012.
  * Bugfixes:
    * distance_to() was buggy with coordinate system conversion

* December 2003 : Soya3D 0.6.1
  * Bugfixes:
    * remove "import soya.game.level" in several lesson, which was
    totally useless and was causing a dependance on py2play.

* December 2003 : Soya3D 0.6.2
  * Bugfixes:
    * Remove "home_page" keyword in setup.py, which cause troubles
    with old python

* June 2004 : Soya3D 0.7
  * Full rewrite in Pyrex

* August 2004 : Soya3D 0.8
  * Cell-shading
  * Shadows
  * Bugfixes:
    * Memory corruption in chunk, thanks Zachary Hamm
    * Segfault in landscape
    * Face.is_coplanar() was actually 'is_non_coplanar' ; this may
      cause some buggy Blender exportation.
    * Cal3D model with multiple submeshes were buggy
    * Point.position was always returning None

* December 2004 : Soya3D 0.9
  * MacOSX support (thanks Toni Alatalo and zratchet)
  * Windows support (thanks Thomas Paviot)
  * Auto-exporter for Blender, OBJ/MTL (thanks David PHAM-VAN), .png
    and .jpeg images (see the blender-auto-exporter-1 tuto)
  * Now include blender2cal3d.py
  * Raypicking on animated (Cal3D) models
  * get_box, get_dimension and set_dimension are now implemented
    and have been moved in CoordSyst (they were in World previously)
  * new method widget_begin_round, widget_advance_time,
    widget_end_round for widgets
  * new soya.set_gamma function to control gamma correction
  * Added 3DS import script
  * new feature : environment mapping
  * Bugfixes:
    * Font.get_print_size() was buggy
    * Raypicking on scaled CoordSysts was buggy
    * scale_x, scale_y and scale_z were working only if the previous
      value was 1.0
    * particle system autoremoving was slighly ugly
    * soya.opengl.glDeleteList was buggy

* December 2004 : Soya3D 0.9.1
  * Bugfixes:
    * Remove useless file ode/c2py.c in setup.py

* January 2005 : Soya3D 0.9.2
  * Environment mapping now works for everything (not only SimpleShape)
  * New Cal3dVolume.animate_reset method
  * Faster and less scrambly TravelingCamera
  * New Camera.coord3d_to_2d method
  * Bugfixes:
    * Blender2Cal3D exporter now create directories if needed
    * You can now put soya in the same directory than soya apps
      (it was causing an "ImportError: No module named _soya")
    * Take scaling into account for particle systems (only scaling on X
      axis is used currently)
    * Disable fog for additive_blending material (because fog has
      already been applied before)
    * Cellshaded non-smoothlit faces were lit by backfacing lights

* July 2005 : Soya3D 0.10
  * Use Cal3D 0.10 (no longer compile with older version)
  * Use (and require) GLEW (thanks Dunk)
  * Pudding integrated (soya.pudding now, and see tutos pudding-*,
    big thanks Dunk !)
  * Tofu integration (see soya.tofu4soya, and tofudemo.py tuto).
  * 2 methods added: loaded() is called when an object is loaded from
    a file, and added_into() is called when a CoordSyst is added
    inside a World (or None if it is removed from its previous
    parent).
  * New tutorial multiple-camera-1.py
  * Bugfixes:
    * Cal3DVolume are now pickleable
    * Ortho Camera now works (object culling was buggy)
    * Camera.coord3d_to_2d and Camera.coord2d_to_3d now works with
      ortho Camera, and takes FOV into account for non-ortho Camera.
    * Bugfixes in OBJ/MTL importer (thanks Vito)

* August 2005 : Soya3D 0.10.1
  * Support for SDL_mixer (with PySDL_mixer)
  * If Blender exporter doesn't find PIL, it now tries system-wide Python
  * Bugfixes:
    * Bugfix in Face.get_box()
    * Land.solid was not working
    * Raypicking on Cal3DVolume.solid was buggy, in particular when
      the Cal3DVolume was hidden (visible == 0 or out of the screen)
    * raypick_b was not working on Land if using a vertical direction
    * Particle systems unpickling was buggy
    * Raypicking was not working if the root scene was not located
      in (0.0, 0.0, 0.0)
      
* February 2005 : Soya3D 0.10.2
  * Added interpolation support (see tuto state-1)
  * soya.tofu4soya now use interpolation for remotely controlled
    mobiles
  * Solid shapes (see tuto modeling-solid-shape-1)
  * Support for texture border (automaticaly detected and activated if the
    texture size is 2**x+2)
  * Added soya.label3d.Label3D, a 2D text label at a 3D position
  * Added a module with material classes with special effects on
    textures, like gliding texture (see soya.spc_material)
  * Update blender2cal3d.py for Blender 2.41
  * Bugfixes:
    * Newly created materials were activated by error
    * Cal3dVolume no longer crash if it has no shape
    * changing Material.clamp didn't re-init the texture, and thus was
      having no effect
    * Camera.coord2d_to_3d now works better with ortho cameras (still
      not perfect though)
    * Bugfix on object pickling (the bug was probably introduced by a
      recent version of python)
