[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
iModelData
)
The IDS is built by a simple concept. All components implement
iObject
. Except a few cases, the structure is built using the
iObject
hierarchy. The following components are currently used:
iImage
, an iTextureWrapper
,
or a filename.
iMaterial
or an
iMaterialWrapper
.
iObject
hierarchy.
Sub-objects are currently organized in a way that is closely related to the thing and sprite meshes used in CS: Every object contains a Default Vertex Frame, which is (of course) a vertex frame object. Also, an object contains any number of polygon objects. Take these together and you have the static shape of an object (and also the shape that is used when you build a thing mesh from it).
iObject
children but rather directly though the
iModelDataAction
interface. Currently the only types of frames that are
allowed are vertex frames.
Finally, the time value system has to be explained. Time values are stored in a rather unusual way: The time that is stored with each frame is the point in time when the frame ends. For example, if the first frame lasts 50 msec, then the time value stored with it is 50 msec. If the second frame lasts 30 msec, its time value is 80 (50+30). The last time value is also the total length of one animation cycle. Note that for interpolated animation this produces another effect: At the point zero in time, the frame to show is equal to the last stored frame. The animation then moves on to the first time value, shifting the frame to show over to the first stored frame.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |