Back to Reader3ds
New in version 5.0
- Integrated licensing system - girst 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

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
|