A scale can be specified for a static or dynamic object by setting the VGOBJ_SCALE property to the desired scale using vgProp or by entering a value in the LynX Objects panel. For a static object, this scale must be set BEFORE the object is made as this scale is 'built into' the static object and may not be changed after the object has been made. Dynamic objects may have their scales changed after system configuration, or after the objects are made. Scaling is uniform in x, y, and z. The LOD (Level of Detail) ranges for the object are multiplied by the scale factor. A dynamic object may also have a built-in scale. As with static objects, setting VGOBJ_SCALE through the ADF or through vgProp BEFORE a dynamic object is 'made' with vgMakeObj builds the scale factor into the object. Further scaling of the dynamic object is against this base scale. For example, if the ADF has a scale of 2 for a dynamic object and during runtime the user scales the object by 3, the object then appears 6 times larger than it was modeled.
When a dynamic object with an offset (non-identity offset) is scaled during runtime, the object's position changes as well as its size. To avoid this effect, give no offsets to objects that are to be scaled during runtime. |