Reader3ds versions history

 Back to Reader3ds

New in version 5.1

  • Fixed bug when reading spot lights.
  • Fixed Null reference exception when setting Default Material.
  • When applying smoothing groups or smooth shading, the texture coordinates are also remapped (before textures were not applied correctly).
  • Using new licensing model with improved evaluation. The new version has no fixed expiration date - instead library can be installed for a 60 days evaluation.

 

New in version 5.0

  • Integrated licensing system - first commercial version.

 

New in version 4.3

  • Fixed bug where camera name or light name is longer than 8 characters (ArgumentOutOfRangeException: Length cannot be less than zero.).
  • Added public static get ExpirationDate - so it is possible to get expiration date without actually creating an instance of Reader3ds (this can already throw expired exception).
  • Fixed exception when reading 3ds file without any animation keyframe.

 

New in version 4.2

  • Support for smoothing groups - also automatically support flat and shaded models. This greatly improves rendering quality (see the image below).
  • Added Shading property to define None, Flat, Smooth or SmoothingGroups shading. Default value is SmoothingGroups that uses the Smoothing Groups values stored in 3ds file to define which edges are smooth and which are flat. This option produces the results as in the 3d model designer. However if you wish to force the flat or smooth looking objects choose either Flat or Smooth (before reading the 3ds file). Also if performance is much more important than rendering quality choose None.
  • GetFrame can now get a frameNo as double to render the models between frames (for smoother animation)
  • Fixed bug when reading from reasource and 3ds file contains texture files (exception was thrown).
  • Also now it is possible to set TexturesPath property to url of the textures (http://...) or to the application resources ("pack://application:,,,/XAMLBrowserApplication1;component/models")
  • Added GetCameraForFrame method that gets the camera for the desired frame number - this enables creating animated cameras
  • Fixed reading material colors for some older 3ds files (in previous version reading crashed with "Non-negative number required." exception)
  • The previous version has wrongly convert position from 3ds coordinate system to wpf coordinate system. The difference is that the x axis now points to the right instead of the left and the z axis points to the viewer and not away from it. This version by default uses new coordinate system, but if your application depends on the old one, you can simple set this property to true. But note that this can only be a temporary solution. Set UseOldCoordinateAxis property to true to use old coordinate axis.
  • Added Materials property - Dictionary that can be used to access all the materials defined in 3ds by their name.
  • Added support for animated lights (PointLight - positin, color; SpotLights - position, direction, color)
  • Added GetExpirationDate method
  • Added TargetViewport - gets the viewport that was used in ReadFile
  • Added Animator3ds - helper class to simplify playing animations stored in 3ds file
Changes and fixes in Transformer3ds:
  • Fixed isAditive parameter for Scale and Translate transform
  • ObjectName can be now also Model3DGroup and not only Model3DGeometry
  • RotateObjects can now be called with RotateTransform3D - this enables setting custom center of rotation (instead of center of object)
  • Added methods without object name - to translate, rotate and scale all the objects and lights (as using constant Ab3d.Reader3ds.RootModelGroupName for objectName).
  • Added Transformer property to Reader3ds - this simplifies transforming the read objects

Improved rendering quality with uning smoothing groups
Sample R2D2 model rendered without using smoothing groups (left) and with using them (right - new in v4.2) - some edges are sharp and some are smooth. See Shading sample for more info (included in download)

 

New in version 4.1

  • Reader3ds can now properly import the objects hierarchy. For example if we have a robot arm (see image below) and we rotate the base than all the child joints and arms are rotated accordingly.
  • There is a new method DumpNamedObjects that can be called in immediate window (after the debugger is stopped and the 3ds file is already read with Reader3ds) to get all the available named objects and a hierarchy of the objects.
  • Transformer3ds is a new class in Ab3d namespace that can greatly simplify transforming and animating objects read with Reader3ds. The class contains many methods - for more info see RobotArm sample and help.
  • Online and offline help (chm) file is created with Sandcastle. It is really a great tool that is used also for building MSDN help. The online help can be seen here. The chm help file for offline help is now included in the Reader3ds package.

 Back to Reader3ds
Copyright © 2006-2009 Andrej Benedik s.p. All Rights Reserved.