[ANN] Soya 3D 0.12

Jiba jibalamy at free.fr
Wed Jul 19 23:21:05 CEST 2006


*** What is Soya 3D ? ***

Soya 3D is an object oriented "high level" 3D engine for Python. Somehow, Soya is to 3D what Python is to programming: an 'avant guarde' 3D engine, a kind of 'UFO' in the 3D world :-). Soya allows to develop very rapidly games of other 3D apps, entirely in the Python language (contrary to most of the other engine, in which Python is limited to scripting tasks).
Moreover, Soya is easy to learn and offers pretty good performances.

Soya is used successfully in 3D games, but also in demos, scientific simulations, or educational programs.

Soya offers the features one can expect from a 3D engine, like basic scene management, cell-shading, shadows, particles systems,... as well as some unique features aiming at making 3D development easier and more rapid.

Soya is Free Software, under the GNU GPL. Soya is written in Pyrex (a mix of C and Python) and in Python.


*** New in Soya 0.12 ***

0.12 is a major release with many new features:
 * There were many weird classname in Soya. Many of them have be renamed to more comprehensive name (e.g. Idler becomes MainLoop). Backward compatibility is fully ensured, though.
 * A new sound API, integrating directly OpenAL, and fully multi-platform (the old pyopenal was not working well under windows).
 * Soya is now able to automagically determine which objects are static, and to optimize them (currently, it is used to optimize shadows and sounds).
 * The first step of a model deforming system has been implemented; it is however not yet fully functional (hey, we have to keep something for 0.13 :-).
 * A new documentation for Soya is under writing: http://download.gna.org/soya/soya_guide.pdf

Soya website:
http://soyaproject.org

Download Soya 0.12:
http://download.gna.org/soya/Soya-0.12.tar.bz2
http://download.gna.org/soya/SoyaTutorial-0.12.tar.bz2


Complete changelog:
* July 2006 : Soya3D 0.12
  * Massive renaming (backward compatibility is maintained through
aliases): Idler       -> MainLoop
      Shape       -> Model
      Cal3dShape  -> AnimatedModel
      Shapifier   -> ModelBuilder
      Volume      -> Body
      Cal3dVolume -> Body (merged with Volume)
      Land        -> Terrain
  * New sound API (see soya.Sound, soya.SoundPlayer and tuto sound-1.py)
  * Static and auto_static: all Soya objects (inheriting from
    CoordSyst) have now a "static" attribute that can be use to tag
    them as static for optimizing them, and an "auto_static" attribute
    (defaulting to true) that allows Soya to automatically determine
    wether they are static or not
  * Static shadows: static object's shadows are rendered faster
  * New method MainLoop.update, for embedding Soya inside Tk (or other
    GUI or mainloop) ; MainLoop.start has been removed since it has
never been really working
  * Font now inherits from SavedInAPath (=> you can have a data/fonts/
    directory)
  * Dynamic model deforming (see tuto deform-1.py); this feature is
    still under work and the API may change in the next release.
  * Auto-exporters can now be disabled (soya.AUTO_EXPORTERS_ENABLED = 0)
  * Bugfix:
    * Bugfix in 3DSmax exporter on material (thanks Snaip)
    * The Blender => Soya auto-exporter no longer require that Blender
      can import Soya. This was causing some weird bugs with some
      Blender binaries.
    * Fix for 64 bits platforms.
    * Bugfix on mirroring (scaling with negative values)
    * Bugfix on shadows on AnimatedModel: soya was segfaulting if the
      model was culled on the first rendering

Jiba


More information about the Python-announce-list mailing list