class Node
Defined in:
Every node that belongs to a scene graph is a subclass of the C4Node.h
Node
class.
Definition
class Node : public NodeTree, public Transformable, public LinkTarget<Node>, public Packable, public Configurable, public Creatable<Node>
Member Functions
Node::GetNodeType |
Returns the type of a node. |
Node::GetNodeFlags |
Returns the node flags. |
Node::SetNodeFlags |
Sets the node flags. |
Node::GetPerspectiveExclusionMask |
Returns the perspective exclusion mask. |
Node::SetPerspectiveExclusionMask |
Sets the perspective exclusion mask. |
Node::GetWorld |
Returns the world to which a node belongs. |
Node::GetOwningZone |
Returns the most immediate zone containing a node. |
Node::AppendNewSubnode |
Adds a newly created subnode to a node. |
Node::EnableNode |
Enables a node tree. |
Node::DisableNode |
Disables a node tree. |
Node::GetObject |
Returns a node's object. |
Node::SetObject |
Sets a node's object. |
Node::GetController |
Returns a node's controller. |
Node::SetController |
Sets a node's controller. |
Node::GetNodeTransform |
Returns a node's local transform. |
Node::SetNodeTransform |
Sets a node's local transform. |
Node::SetNodeMatrix3D |
Sets the upper-left 3 × 3 portion of a node's local transform. |
Node::GetNodePosition |
Returns a node's local position. |
Node::SetNodePosition |
Sets a node's local position. |
Node::StopMotion |
Resets the motion information stored for a node so that motion blur is correctly stopped. |
Node::InvalidateNode |
Invalidates the world transform and dependent information. |
Node::UpdateNode |
Updates the world transform and dependent information. |
Node::GetBoundingSphere |
Returns a node's world-space bounding sphere. |
Node::NodeVisible |
Determines whether a node is visible within a given region. |
Node::SetVisibilityCallback |
Sets the function that handles visibility testing for a node. |
Node::SetOcclusionCallback |
Sets the function that handles occlusion testing for a node. |
Node::CalculateBoundingBox |
Calculates the bounding box for a node. |
Node::GetHub |
Returns the hub attached to a node. |
Node::AddConnector |
Adds a node connection. |
Node::RemoveConnector |
Removes a node connector. |
Node::GetConnectedNode |
Returns the connected node with a particular key. |
Node::SetConnectedNode |
Sets the connected node with a particular key. |
Node::GetProperty |
Returns the property of a given type that is attached to a node. |
Node::GetFirstProperty |
Returns the first property directly attached to a node. |
Node::AddProperty |
Attaches a property to a node. |
Node::GetPropertyObject |
Returns the property object attached to a node. |
Node::SetPropertyObject |
Attaches a property object to a node. |
Node::GetSharedProperty |
Returns the shared property of a given type that is stored in a node's property object. |
Node::GetNodeName |
Returns the name of a node. |
Node::SetNodeName |
Sets the name of a node. |
Node::CloneNode |
Clones a node hierarchy. |
Node::PreprocessNode |
Performs any preprocessing that a node needs to do before being used in a world. |
Node::NeutralizeNode |
Returns a node to the state it was in before being preprocessed. |
Constructor
Node(NodeType type = kNodeGeneric);
Description
The Node
class provides the base functionality for all members of the scene graph representing a world. Most nodes are represented by subclasses of the Node
class such as Geometry
or Light
. When the Node
class itself appears in a world, it simply acts as a generic grouping mechanism and has the kNodeGeneric
type.
Base Classes
Tree<Node> |
Nodes are organized in a tree hierarchy. (The NodeTree class is an intermediate class used internally.)
|
Transformable |
Holds the object-to-world transform for a node. |
LinkTarget<Node> |
Nodes support smart linking with the Link class.
|
Packable |
Nodes can be packed for storage in resources. |
Configurable |
Nodes can define configurable parameters that are exposed as user interface widgets in the World Editor. |
Creatable<Object> |
New node subclasses may be defined by an application, and a creator function can be installed using the Creatable class.
|
See Also