Development news: animating skinned H-Anim humanoids

December 22, 2010
Lucy (from Seamless3d test page)
Lucy with our joints visualization
BoxMan with joints visualized
Billboards casting shadows

I just implemented animating skinned humanoids, following the H-Anim specification. This is implemented in our engine, and in particular can be used by our view3dscene.

Documentation of current H-Anim support is here (when the view3dscene with this will be officially released, it will be moved to stable H-Anim support docs).

As usual, you can test the latest development version by downloading binary from our nightly builds. Sample models are "Lucy" examples from Seamless3D, also "The famous boxman" linked from the bottom of InstantReality H-Anim overview.

Check out also the new view3dscene menu item "Edit -> Add Humanoids Joints Visualization".

Other improvements in our engine and view3dscene:

  • MultiGeneratedTextureCoordinate node introduced, to better define the Box/Cone/Cylinder/Sphere.texCoord.
  • Texture coord generation dependent on bounding box (TextureCoordinateGenerator.mode = BOUNDS*). This allowed fixing shadow maps implementation for the case when shape has a texture but no explicit texture coordinate node.
  • Fix Collada->VRML conversion (thanks to Simon from forum).
  • Zoom improved, to prevent going too far away from object by zoom-in.
  • Help wanted: if you're familiar with Mac OS X (and FreePascal), I outlined here how you can help.
  • Fixed view3dscene --screenshot modal box on invalid filename.
  • When local geometry (like coordinates) is often changed, shape changes into "dynamic" state: it's octree will be very simple, so we will not waste time on rebuilding it.
  • Make a nice warning when more than one value specified for SFNode field value in X3D encoding.
  • Engine terrain demo works also on GPUs without GLSL support.
  • Fixes for rendering Walk/Fly tooltips in view3dscene on some GPUs.
  • Engine documentation improved a lot, I talked about this in details in previous news post.