view3dscene 3.7.0 release: Screen effects, drag sensors, ClipPlane, Billboard, toolbar and much more
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
After 3 months of work, I'm proud to present a new release of our VRML/X3D browser: view3dscene 3.7.0.
Screen effects is a new eye-candy feature in our engine. Try the View -> Screen Effects menu in view3dscene for various effects that can be applied on any 3D scene.
For people who know a little GLSL (OpenGL Shading Language), this is quite powerful toy for designing your own screen effects. You can define a simple GLSL shader in VRML/X3D file, that processes the screen in any way you like, given the color and depth buffer. Documentation and examples of defining your own screen effects are here.
Developers: Screen effects may also be defined (and controlled) directly from the Object Pascal source code. You only have to override TKamAbstractViewport.GetScreenEffects and TKamAbstractViewport.ScreenEffectsCount and return your own effects there. See multiple_viewports example source code (in engine sources in examples/vrml/) for a simple example. And see v3dscenescreeneffects.pas for more involved example straight from the view3dscene sources.
New nodes implemented: drag sensors (PlaneSensor, SphereSensor, CylinderSensor
),
ClipPlane
, ColorRGBA
,
Billboard
, ViewpointGroup
,
Toggler.
Major improvements and fixes to existing nodes:
Transform
(and similar nodes from H-Anim) animation is greatly optimized.
Also changing Transform
node containing light sources works fast now.
Many TimeSensor
,
RenderedTexture,
OrthoViewpoint
improvements.
See news archive for details.
Camera improvements: Examine camera now honors Viewpoint
nodes. Switching navigation mode preserves camera view.
Smooth transitions (following NavigationInfo.transitionType, NavigationInfo.transitionTime
fields)
are done. headBobbingDistance
is renamed into much more suitable headBobbingTime and expressed in seconds.
Mouse wheel is supported for zooming in Examine mode.
User interface improvements: nice toolbar at the top of the window, with most important buttons. Navigation mode buttons have tooltips (hover mouse over them to see) describing camera controls. Nice "%s warnings" button.
Primitives (Box, Cone, Cylinder, Sphere
) have the
texCoord
field and work with shadow maps,
multi-texturing, bump mapping etc.
New functions for KambiScript to handle rotations.
Our website and documentation also got a lot of improvements. Most of them were already announced in previous news items, and will not be repeated now. Some new improvements:
view3dscene download links, and easy instructions to get GNOME integration and thumbnailer, are now more visible on view3dscene webpage.
The pages describing our VRML/X3D implementation status for each X3D component are much improved. Each component page starts with a very short introduction, describing what the component is and how it's used in the most typical cases. Also, the node names are links to actual X3D specification pages.
The idea behind these improvements is to give interested developers (in particular, the ones not familiar with VRML/X3D yet) a way to orient themselves in the large number of VRML/X3D nodes. We give an easy overview of the component and the links to X3D specification to learn more details.
And everything is of course interspersed with the details about our engine implementation, it's strength and current limitations.
Finally, I added a section about donating and a button to donate through Flattr to a couple pages.
As usual, view3dscene release is accompanied by new engine release (2.2.0) (this is where the magic actually happens :), and new Kambi VRML test suite release (2.9.0) (which contains tests and demos of all the new features).