j3d.org Code

Package org.j3d.loaders.discreet

Classes for parsing Discreet's 3DS Max .3ds file format.

See:
          Description

Interface Summary
MaxConstants A definitive collection of all known chunk identifiers in the Discreet 3DS Max file format.
 

Class Summary
CameraBlock Representation of a single camera and its paramaters needed for rendering.
ColorData A single color data from the keyframe tracking.
FalloffData A single set of spotlight falloff angle data from the keyframe tracking.
FieldOfViewData A single set of camera field of view angle data from the keyframe tracking.
HotspotData A single set of spotlight hotspot angle data from the keyframe tracking.
KeyframeAmbientBlock Representation of a collection of a single camera block in a keyframe.
KeyframeBlock Representation of a collection of keyframes for animating the object.
KeyframeCameraBlock Representation of a collection of a single camera block in a keyframe.
KeyframeCameraTargetBlock Representation of a collection of a single camera block in a keyframe.
KeyframeColorBlock Representation of a keyframe's collection of color information.
KeyframeFalloffBlock Representation of a keyframe's collection of spotlight falloff information.
KeyframeFOVBlock Representation of a keyframe's collection of field of view information.
KeyframeFrameBlock Representation of a collection of a single frame block in a keyframe.
KeyframeHotspotBlock Representation of a keyframe's collection of spotlight hotspot information.
KeyframeLightBlock Representation of a keyframe general lighting handling.
KeyframeMorphBlock Representation of a keyframe's collection of object morph information.
KeyframePositionBlock Representation of a keyframe's collection of position information.
KeyframeRollBlock Representation of a keyframe's collection of camera roll information.
KeyframeRotationBlock Representation of a keyframe's collection of rotational information.
KeyframeScaleBlock Representation of a keyframe's collection of scale information.
KeyframeSpotlightBlock Representation of a keyframe spotlight handling.
KeyframeSpotlightTargetBlock Representation of a collection of a single camera block in a keyframe.
KeyframeTag Base class representing the common data between all the keyframe tag types.
LightBlock Representation of a single light and its paramaters needed for rendering.
MaterialBlock Representation of a collection of material definitions that form a single block of data in the file.
MaterialData A single set of material information for each triangle mesh.
MaxParser A low-level parser for the Discreet 3DS Max file format.
MaxUtils Utility class for working on the parsed 3DS objects to create additional data structures.
MorphData A single set of morph target data from the keyframe tracking.
NodeHeaderData The node header data for keyframe chunk descriptions.
ObjectBlock Representation of a collection of triangle meshes that form a single block of data in the file.
ObjectMesh Representation of a complete set of meshes to give a single object from the file.
PositionData A single set of position data from the keyframe tracking.
RollData A single set of camera roll data from the keyframe tracking.
RotationData A single set of rotation data from the keyframe tracking.
ScaleData A single set of scale data from the keyframe tracking.
TextureBlock Representation of a single texture and its paramaters needed for rendering.
TrackData Common information that all tracks keep with them.
TriangleMesh Representation of a single triangle mesh.
 

Package org.j3d.loaders.discreet Description

Classes for parsing Discreet's 3DS Max .3ds file format.

A parser that handles the raw structural information of the file and returns objects that correspond to the structure. No attempt is made to change the raw values as reported by the file except for colours. All colour values are normalised to a 3-component float value. 3DS likes to dump invalid colour values with ranges outside the normal [0,1] range, but we leave anything like that as is.

Implementation notes

When walking through the various classes, you will see that they roughly match the chunk pattern of the 3DS file. Some shortcuts have been taken here and there where the chunks were starting to get way too small for any usable benefit.

Colour values are all normalised into the normal floating-point format. If the original values were presented as byte for (24 bit colour) they are normalised to the normal [0,1] range for floats. Values that were sourced as floats keep the exact value. Since 3DS (and MAX) are both known to export colours outside of this range, expect that some values will be encountered this way and prepare to range cap as appropriate.

Percentage values are always presented as a fractional value between 0 and 1 regardless of whether the original value was written as an integer or floating point value.

If you need something that reads to a form that is renderable by a rendering engine, you will need to visit the various renderer-specific packages under org.j3d.renderer.renderer_name.loaders.

External References


j3d.org Code

Latest Info from http://code.j3d.org/
Copyright © 2001 - j3d.org