Ardor3D Changelog

What's new in Ardor3D 0.7

Sep 20, 2012
  • What's new:
  • New Terrain System (see wiki for feature list: ardor3d.com/wiki/terrain)
  • New OBJ format loader
  • New MD2 format loader
  • New DDS loader from scratch (supports flip)
  • Enhanced demo runner with support for descriptions, thumbnails and memory settings
  • New website! Webstart-enabled demos.
  • New UI text widgets, supporting style markup
  • New Android SDK
  • API Improvements / Changes:
  • Switched to java 6
  • PointSprite extension
  • Using Guava instead of google collections
  • Dropped guice dependency
  • Improved Maven - Lwjgl native integration
  • Added more camera controllers
  • Support for geometry shaders
  • Improved PSSM shadows and PCF filtering
  • Re-implemented Projected Grid mesh
  • Automatic bounding and transform validation
  • TrailMesh for trails
  • Moved to lwjgl 2.6
  • Support for alpha/sample coverage
  • Collada importer improvements
  • Lots of new examples

New in Ardor3D 0.6 (Dec 9, 2009)

  • What's new:
  • New CPU/GPU capable skeletal skinning framework.
  • TextureClipMap (Megatexture) for use in Terrain or other geometry texturing.
  • Ardor3D based UI System
  • Completely rewritten Collada Importer - now much more functional and no longer requires JiBX.
  • 3D Math functions (noise, fbm, etc.) and utilities for visualizing these as procedural textures or height-maps.
  • BloomRenderPass, allowing simple addition of a "bloom" effect.
  • Much improved, automatic resource cleanup - now handles detection of GPU referenced items being gc'd and automatically removes them from the card for you.
  • Basic support for applets in place.
  • API Improvements / Changes:
  • Terrain system now supports non-wrapping terrain, terrain transformations, improved fog, user definable height ranges and user initiated height-map updates.
  • Water use "Oblique near frustum clipping" instead of OpenGL clip-planes to enable clipping on objects with shaders and has the ability to blur reflections.
  • Terrain and Water now work a lot nicer together (see TerrainWaterExample)
  • FBO texture rendering now supports multi-sample.
  • Curve-based transform controllers for smooth character/camera control.
  • ResourceLocator system now uses an extensible ResourceSource interface for finding resources.
  • Transparency render type hint added allowing control over one and two pass transparency rendering from within the Scene itself.
  • Game task queues now ref'd by Object instead of RenderContext allowing for custom or cross context queues.
  • AwtCanvas is now split into jogl and lwjgl versions to disconnect ardor3d-awt from an lwjgl dependency.
  • Shadow system now supports directional lights and casting shadows through alpha test enabled textures.
  • Shadow system now respects Mesh flag "castsShadows"
  • Older shadow systems have now been dropped in favor of our PSSM implementation.
  • Texture's "blendColor" field renamed to "constantColor" to more accurately reflect use.
  • Added image loader for Ardor3D binary format (.abi)
  • Added ability to update the face of an existing cube map texture via the renderer.
  • Support added to the Renderer for setting scissor area.
  • Now supports compilation on OpenSolaris
  • Now supports Solaris SWT in maven config
  • Lots of javadoc and comments added.
  • Lots of other small API tweaks and cleanup.
  • Bugs Addressed:
  • Fixed bug in AWT that prevented grabbed from working properly.
  • Bounding transforms now correctly apply non-rotational matrices properly from the Transform class.
  • Fixed full screen mode issues happening on some Linux distros.
  • Fixed bug in Transform.getGLApplyMatrix where matrix was missing a "1" at 3, 3
  • Fixed bug in Texture state texGen application where wrong mode might be set.
  • Fixed bug in Triangle class where point A was returned for getB and getC.

New in Ardor3D 0.5 (Nov 19, 2009)

  • What's new:
  • Headless rendering support added. You can now render 3d content without a visible 3d display.
  • Vertex Buffer Object support added as an inheritable flag - also supports automatic buffer combining for more optimization.
  • Display List support added. You can now compile individual meshes or entire scenegraph branches as a display list.
  • High quality water rendering support added as a node that can be easily inserted into your scene.
  • First edition of our geometry clipmap terrain system added.
  • New render delegate ability added to Spatial. You can now bypass draw operations with a RenderDelegate at any point in the scenegraph.
  • Multi-context scenegraph support: The same scenegraph can now be drawn to several canvases even if they do not share the same GL context.
  • Improvements and API changes:
  • GameTaskQueue now has a time limit when executing multiple tasks per execute call. executeAll field is thus renamed executeMultiple.
  • Default render bucket type is now Opaque instead of Skip.
  • Fixed resource loading issue in Collada Loader that prevented texture loading on some models.
  • Vector4 can now be used as a ShaderUniform.
  • GLSLShaderDataLogic interface now takes a Mesh instead of a MeshData.
  • MeshData FloatBuffer and IntBuffer fields now wrapped in FloatBufferData and IntBufferData classes (similar to, and replacing the TexCoords class). These classes allow for setting number of components per field type as well as tracking opengl ids for VBOs.
  • Controller class has been replaced with a much simplified SpatialController interface. Old Controller functionality kept as the new ComplexSpatialController class.
  • Controllers are only saved during Savable serialization if SpatialController implementor also implements Savable.
  • LittleEndien renamed LittleEndianDataInput.
  • Node updates children in reverse order to allow for child deletion during update.
  • OpenGL Context sharing in Jogl is now much more robust.
  • More robust implementation of Quaternion fromVectorToVector added.
  • getNormalizedDeviceCoordinates methods added to Camera.
  • AwtColorUtil: New Awt color Ardor ColorRGBA utility class added to the ardor3d-awt package.
  • AwtImageLoader util can now handle RenderedImage and RenderableImage types.
  • TextureManager now only maintains one copy of a loaded texture.
  • Textures now track their id per gl context.
  • Now using lwjgl 2.1.0
  • Now using Google Collections 1.0 rc1
  • improved javadoc in many places.
  • Bug Fixes:
  • Fixed issue with BMFonts generated with the tool option "match character height".
  • LittleEndianDataInput reader will no longer silently fail when reading past the end of a file.
  • LittleEndianDataInput now properly implements readFully(...)
  • Fixed bug in Transform where translated Transforms where still considered "identity".
  • FSAA now possible in JoglCanvas (already worked in LwjglCanvas.)
  • Fixed excessive object creation in box bounding types.
  • Incorrect support check fixed during wrap apply for cubemap textures.
  • setSwarmOffset was incorrectly setting swarmPoint.
  • More fixes to allow for proper warmup of Particle systems.
  • Several other small fixes.