Development news: Examine improvements, smooth transitions, PlaneSensor and more
The quest to "cleanup and optimize" all around the engine continues :) New features are listed below. As usual, you're welcome to test them by trying our nightly builds.
Examine camera got a functionality boost, and as a result some long-time troubles with switching camera modes are fixed now. Examine camera correctly honors now Viewpoint nodes, and switching camera modes preserves the current view, and switching viewpoints preserves camera mode. Thanks to Jens van Schelve for reporting this and pushing me to fix this :)
Developers: engine has a new camera class, TUniversalCamera, that is created by default for VRML/X3D scenes and offers a functionality of both Examine and Walk navigation methods. If you previously used something like
"(SceneManager.Camera as TWalkCamera)" to access Walk-specific properties, you may need to use now
"(SceneManager as TUniversalCamera).Walk" to use them. Or just try to use the basic
TCamera features, without downcasting to specific camera descendants.
Smooth transitions between viewpoints are implemented. They also follow X3D
NavigationInfo.transitionTime fields (X3D spec).
All camera moving and rotating speeds are now expressed inside the engine in nice units/per second.
Also, headBobbingDistance is renamed into much more suitable headBobbingTime, and is also expressed in seconds now (divide by 50 to get the same behavior with old values).
New sensors implemented:
demos in SVN kambi_vrml_test_suite/x3d/plane_sensor*.x3dv),
StringSensor (X3D spec, support details, demo).
Shadow maps (receiveShadows, shadows fields) for primitives (
Sphere etc.) are fixed now (demo).
Victor Amat updated the demo using our RenderedTexture to get mirrors on a flat surface. See kambi_vrml_test_suite/x3d/rendered_texture/chess.x3dv in SVN kambi_vrml_test_suite.
Various fixes to
TimeSensor and other stuff, thanks to Stephen H. France for reporting!
Copyright Michalis Kamburelis and Castle Game Engine Contributors.
This webpage is also open-source and we welcome pull requests to improve it.