view3dscene Changelog

New in version 3.13.0

August 19th, 2013
  • The Mac OS X version has now a native look and is easy to install.
  • Downloading resources using the HTTP protocol is implemented.
  • Loading absolutely all resources from data URI (textures, sounds, 3D models) is now supported.
  • New key shortcuts are available to easily switch between viewpoints.
  • New X3D features include CAD level 2 nodes, MultiTexture.function, and NavigationInfo.transitionComplete.
  • Switching fullscreen is improved.
  • Material properties can be loaded from separate XML files.

New in version 3.12.0 (January 28th, 2013)

  • It is now possible to navigate in the Walk and Fly modes by mouse dragging.
  • Mouse 3D device support was added.
  • Screen-space ambient occlusion is implemented (see menu item "View -> Screen Effects").
  • 3D lights can be edited interactively (see the "Edit -> Lights Editor" menu item).
  • All screen effects cooperate now with multi-sampling (anti-aliasing).
  • UNIT statement from X3D 3.3 is implemented.
  • VisibilitySensor node is supported.
  • Many fixes to triangulating concave polygons.
  • Other minor improvements and optimizations coming from using Castle Game Engine 4.0.0.

New in version 3.11.0 (January 2nd, 2012)

  • Many improvements to Collada rendering and conversion to X3D.
  • Geometry shaders are supported.
  • The "Limit FPS" option is implemented, to not exhaust CPU.
  • More image formats are supported for textures (GIF, TGA, XPM, PSD).
  • A menu item to take a screenshot with a transparent background.
  • A new command line option to choose an initial viewpoint.
  • Improvements and optimizations to shadow maps and Variance Shadow Maps.
  • Color interpolators work in HSV space.

New in version 3.10.1 (July 28th, 2011)

  • X3D models can be saved to disk using the X3D XML encoding.
  • Conversion from VRML 2 to X3D is now possible.
  • New menu items and command-line options were added to enable conversion to various VRML/X3D versions and encodings.
  • The independent "tovrmlx3d" binary was added to the view3dscene release, specifically to perform conversions in batch mode.
  • Saving VRML/X3D models to classic encoding was also improved with better handling of META tags, better indentation, and more reliable saving of models using shadow maps extensions.

New in version 3.10.0 (July 4th, 2011)

  • 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.
  • 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.
  • Converters improvements:
  • Conversion of 3DS, GEO, Wavefront OBJ, MD3, Collada reimplemented to produce X3D 3.2.
  • When loading 3DS and Wavefront OBJ, we try harder to find matching texture name.
  • We read normalmap (aka bumpmap) information from 3DS and Wavefront OBJ models. This is naturally converted to our bump mapping extensions for VRML/X3D.
  • We also release (in source only) castle version 0.9.2. This is for developers, so you have castle sources compatible with latest engine.
  • Our Blender X3D exporter is updated to Blender 2.58, porting our normalMap features.
  • Other new features and fixes:
  • X3D light source "global" field is correctly supported now.
  • You have much more options for customizing the headlight, by new KambiNavigationInfo.headlightNode extension. You can put any X3D light (directional, spot, point) there, and it will work.
  • VectorInterpolator extension implemented to animate MFFloat sets, for example to animate ElevationGrid.set_height. Simple demo.
  • ColorSetInterpolator extension to animate MFColor (set of colors) fields.
  • LineProperties node implemented (see Shape component support).
  • Transform animation optimizations.
  • Various prototype speed and memory optimizations.
  • Crude implementation of some BitManagement nodes.
  • heigthMap for bump mapping should be placed within alpha channel of normalmap image, and parallax bump mapping works now much more efficient.
  • view3dscene has new File -> Preferences persistent settings for line width (controls all line visualization, like wireframe, bounding box, LineSet etc.), point size and default background color.
  • VRML 1.0 PerspectiveCamera.heightAngle and OrthographicCamera.height support.
  • Shadow maps PCF 4 bilinear fixes — it was too dark.
  • Various smaller engine fixes (some redraw, camera, fpc versions issues fixed).

New in version 3.9.0 (February 8th, 2011)

  • Rendering of dynamic scenes is much faster.
  • GLSL attributes inside VRML/X3D files are allowed.
  • Fog can be limited to specific shapes by the LocalFog node.
  • The FogCoordinate node allows you to specify explicit fog density at each vertex.
  • Loading of GLSL shader sources from a data URI is supported.
  • Multiple viewports observing the same 3D model are implemented.
  • The command-line options for making screenshots in batch mode are now more reliable.
  • TouchSensor.hitTexCoord_changed event is implemented.
  • The TouchSensor.hitNormal_changed event was improved to generate smooth normals.

New in version 3.7.0 (November 22nd, 2010)

  • Various screen-space effects are available: flashlight, depth visualization, and more. Defining your own effects is also possible.
  • Many new X3D nodes are implemented, including all drag sensors, ClipPlane, and Billboard.
  • The animating transformation was optimized.
  • The "Examine" camera mode is improved.
  • Switching navigation mode preserves the camera view.
  • Smooth transitions between viewpoints are implemented.
  • A toolbar with the most important buttons is available.
  • Primitives have the texCoord field and work better with shadow maps.
  • New KambiScript functions were implemented for handling rotations.

New in version 3.6.0 (August 17th, 2010)

  • X3DLightNode.shadows field, to easily activate shadows on everything.
  • Apperance.receiveShadows field, to easily activate shadows on specific shadow receivers.
  • Light sources' projectionNear, projectionFar and such are automatically calculated now to suitable values, as long as you use high-level X3DLightNode.shadows or Apperance.receiveShadows fields.
  • Incompatible changes: DirectionalLight.projectionRectangle order changed, to match standard OrthoViewpoint.fieldOfView order. Also, projection* parameters are zero by default (which indicates that they should be automatically calculated).
  • Easy menu items to control shadow maps, see the new View -> Shadow Maps -> ... submenu.
  • New ProjectedTextureCoordinate node for projective texturing. Can project a texture also from a viewpoint now.
  • Extensions to control head-bobbing in VRML/X3D worlds.
  • Picking and ray-tracing with orthogonal projection fixed. (See also new rayhunter (version 1.3.2) with --ortho option).

New in version 3.5.0 (April 1st, 2010)

  • User-visible features:
  • NURBS support. Most of the X3D NURBS component (level 1) is implemented, this includes curves, surfaces and interpolators. VRML 97 NURBS nodes are also handled.
  • Major bugfixes to the GTK 2 (Unix) backend and shadow maps handling.
  • Countless small bugfixes and improvements.
  • Programmer-visible engine features:
  • Scene manager (TKamSceneManager), a manager of the 3D world.
  • Custom viewports (TKamViewport) easily usable with our scene manager.
  • 2D controls framework: TKamGLButton, TKamGLImage, better TGLMenu and more. Viewports are also 2D controls.
  • Engine sources reorganized into more intuitive src/, examples/ etc. directories.
  • Much more components registered on the Lazarus palette. (This will be extended in next releases.)
  • Engine is licensed now on the terms of the GNU Lesser General Public License (with "static linking exception").