castle 0.8.0, view3dscene 2.3.0 released

November 17, 2007

"The Castle" 0.8.0 released:

  • New demo level: the fountain, done in pure VRML 2.0 format (no more VRML 1.0). Shadows for whole level are generated dynamically. In the next release, this level is supposed to be augmented with some eye candy graphical effects, for now enjoy VRML 2.0 and shadows :)

  • Shadows improvements (see also new chapter in documentation about shadows) :

    • First of all, z-fail implemented and proper detection when z-fail is needed implemented, so faster z-pass is used when possible. "The Castle" shows (toggle with Tab, just like for FPS) number of shadows qualified as z-pass, z-fail, z-fail with light cap needed etc.
    • Shadow volumes silhouette optimization improved: now models don't have to be perfect manifold to use this. See kambi_vrml_game_engine/examples/vrml/shadow_volume_test/ demo, in particular the shadow_volume_test_ball_with_tentacles.sh example.
    • Much better frustum culling for shadows.
  • Arrows are affected by gravity, and underwater "sick" projection effect, thanks to Grzegorz Hermanowicz (herrmannek).

  • Numerous memory and speed optimizations to load VRML models and animations faster and better (thanks to valgrind (callgrind, massif)). Also in "The Castle" there's new Conserve memory feature (this basically means that only creature animations needed for current level are kept in memory), turned on by default.

    So "Loading creatures" is much less resource consuming. And finally pretty much all Radeon issues are fixed now.

  • Fixed hang (actually, a really really long delay) when closing sound device on Linux (actually, with OpenAL sample implementation).
  • Demo levels are available directly from "New game" menu now.
  • Nicer credits screen.

view3dscene 2.3.0 released:

  • Prototypes (both PROTO and EXTERNPROTO) VRML 2.0 feature is fully implemented now !
  • VRML 2.0 lights are correctly handled (DirectionalLight affects every sibling, positional lights affect whole scene taking radius into account).
  • ROUTE constructs of VRML 2.0 are parsed now. Although they still don't actually do anything. So at least scenes using routes are partially handled (routes are simply ignored), instead of just producing an error.
  • Default blending dest factor for view3dscene is GL_ONE_MINUS_SRC_ALPHA, since this is expected by most VRML authors.
  • VRML files compressed by gzip are handled OK even if they have normal .wrl extension.
  • --write-to-vrml fixed
  • Handling of colors (color, colorPerVertex, colorIndex) for IndexedFaceSet and IndexedLineSet done.
  • NavigationInfo.speed is now handled correctly (it sets speed per second)
  • Text3D extension.

Kambi VRML game engine 1.2.0 released. Most features mentioned above for view3dscene and castle (shadows, optimizations, all VRML 2.0 features) are actually implemented in the engine, and other programs only use them. Additionally, some more internal features not mentioned above:

  • Engine is ported and works flawlessly on x86-64 on Linux. No more only 32-bit :) Also, it's partially ported to Windows x84-64 (tested compilation with cross compiler, no actual run tests).

    This also results in the change of archive binary names: they all get i386 after their name, eventually I may release precompiled versions for x86-64 too.

  • GLWindow allows to change cursor shape.

  • Everything is compiled using new FPC 2.2.0.

Kambi VRML test suite 2.0.0 released: many new tests to test new features (protos, external protos, colors, light scope, running path to test NavigationInfo.speed, 3d text), some important VRML 1.0 tests ported to VRML 2.0 too (castle, relative_names, texture_test, house behind the glass).

Blender VRML stuff page added, with improved VRML 2.0 exporter and kanim exporter.

Updated version of VRML engine documentation is available, with a chapter about shadows implementation.