view3dscene 3.10.0, engine 2.5.0, demo models 3.0.0 released
We're proud to release a new stable versions of view3dscene, our VRML/X3D browser and other 3D models viewer, and Kambi VRML game engine, which is at the core of view3dscene and where all the magic is actually implemented :)
Important new features:
We have a new shiny method of rendering everything through shaders (OpenGL Shading Language, aka GLSL). All of the standard X3D rendering features, as well as our extensions, are available in this rendering mode. This results in much better look of many scenes.
By default, the shader rendering is used only for shapes that require it — shapes that are shadow map receivers, use bump mapping, or have an explicit shader source code assigned (by the ComposedShader node, or by the new Compositing Shaders extensions). You can switch "View -> Shaders -> Enable For Everything" in view3dscene menu, to have everything rendered through shaders (make sure you have a good GPU).
All the lighting is calculated per-pixel in shader rendering (we use the Phong shading). This means you see much nicer specular and spot light highlights. Try to make some smooth and curvy metallic surfaces to appreciate it :) Also light's attenuation, radius,
SpotLight.beamWidth are precisely rendered now.
Our bump mapping effect is very nicely unified within the new rendering process. Now bump mapping works under all lighting and texturing conditions, works with two-sided lighting, and takes all normal VRML/X3D lights into account.
This also allows us to make bump mapping "enabled" by default. (You can control it by View -> Bump Mapping menu of view3dscene of course.)
The shadow maps implementation is also nicely unified with new rendering. This gives a huge improvement, as now we take into account the shadows in the correct place of the lighting equation, scaling down only the contribution of the obscured light. So the shadows maps work fully correctly with multiple lights and multiple shadow maps over the same shape.
Shadow maps also work now with all the multi-texturing possibilities. And, in general, they work with every VRML/X3D lights/materials/textures settings.
Another big news is our compositing shaders extensions. The short introduction to our "compositing shaders" idea is here, including the screenshots and information where to find the demo models.
My paper about this was accepted for Theory and Practice of Computer Graphics 2011 conference, and will be available here publicly later.
We also release grand new version of our VRML/X3D demo models 3.0.0 (previously called Kambi VRML test suite). A ton of new models were added, and many were improved — the whole archive is 65 megabytes now (compared to previous 41 megabytes).
Most of the stuff is reorganized into directories named after features (like
shaders etc.) as opposed to versions (like
x3d). Brand new models are mainly in the
shadow_volumes directories, but also explore other directories — the new layout should allow you to discover some old-but-hard-to-find gems inside :) The idea is that new directory names indicate features, so you can immediately see the features of engine and view3dscene.
Other new features and fixes:
VectorInterpolatorextension implemented to animate MFFloat sets, for example to animate
ElevationGrid.set_height. Simple demo.
ColorSetInterpolatorextension to animate MFColor (set of colors) fields.
LinePropertiesnode implemented (see Shape component support).
LineSetetc.), point size and default background color.