Go to: Related nodes. Attributes.

This transform node is a group node that can be used to detect how close a group of objects is to a camera. Typically this node is used for controlling "Level of Detail" visibility. With "Level of Detail", the visibility of the children of this transform are controlled by the distance of a group to a camera and the threshold values.

For example, under a LOD group node, there are three children: ship_detailed, ship_medium, and ship_rough. There are three threshold values: 5, 10 and 15. When the camera is within 5 units of the group bounding box, only ship_detailed is visible. When the view is zoomed out and the camera is 9 units away from the group, only ship_medium is visible. When the view is zoomed out to 30 units away, only ship_rough is visible.See also documentation on the "Level Of Detail" feature.
Node name Parents Classification MFn type Compatible function sets
lodGroup transform drawdb/geometry/transform kLodGroup kBase
kNamedObject
kDependencyNode
kDagNode
kTransform
kLodGroup

Related nodes

groupParts, groupId, makeGroup, baseGeometryVarGroup, meshVarGroup, geometryVarGroup, curveVarGroup, surfaceVarGroup, tweak

Attributes (10)

activeLevel, cameraMatrix, displayLevel, distance, maxDistance, minDistance, minMaxDistance, output, threshold, worldSpace

Long name (short name) Type Default Flags
cameraMatrix (cm) matrix identity outputinputconnectablestorable
Transformation matrix to put the camera position into world space
threshold (th) distance (double) 0.0cm arrayoutputinputconnectablestorablekeyable
List of values that indicate ranges. Ranges are defined by: range[0]: 0 to outLevel[0] range[1]: outLevel[0] to outLevel[1] etc. For example, the first child under this group node will be displayed when the camera is in the first range.
displayLevel (dl) enum 0 arrayoutputinputconnectablestorablekeyable
Overrides the display of any level and can force it to hide or show the object at that level. For example, if the distance between the group and the camera is smaller than the first threshold, then the object at level 0 is visible. If the display level for the object at level 2 is changed to "show", ie. if the attribute displayLevel[2] is set to "show", then the object at level 2 will show, regardless of the current active level.
worldSpace (ws) bool 1 outputinputconnectablestorable
Work in world space of transform or local space If true, the camera distance to the LOD group will be computed in world space. This means it is possible to parent the LOD transform below other transforms and still have it work as expected. If this attribute is set to false, the distance computation ignores any parent transforms of the LOD transform.
minMaxDistance (mmd) bool 0 outputinputconnectablestorablekeyable
Enables the minimum and maximum distance to take effect. For example, if the distance between the group and the camera is smaller than the minimum distance, then the whole group disappears.
minDistance (mid) double -100.0 outputinputconnectablestorablekeyable
The minimum distance at which the group is displayed.
maxDistance (mxd) double 100.0 outputinputconnectablestorablekeyable
The maximum distance at which the group is displayed.
distance (d) distance (double) 0.0cm outputinputconnectable
Distance calculated between the camera and the group node's bounding box.
activeLevel (al) integer 0 outputinputconnectable
The currently active level. For example, if the distance between the group and the camera is smaller than the first threshold, then the active level is 0.
output (o) bool false arrayoutputconnectable
Multi-attribute whose members are enabled based on the distance between the camera and the group node's bounding box. For example, if the distance between the group and the camera is smaller than the first threshold, then the attribute output[0] is TRUE. All other output attributes are false. When the active level changes to 1, then the attribute output[1] is TRUE, and all others are false.