![]() |
Public API Reference |
![]() |
This interface represents a node in the scene graph. More...
#include <iengine/scenenode.h>
Public Member Functions | |
virtual const csRefArray < iSceneNode > & | GetChildren () const =0 |
The children of this scene node. | |
virtual csPtr< iSceneNodeArray > | GetChildrenArray () const =0 |
The children of this scene node. | |
virtual iMovable * | GetMovable () const =0 |
Get the movable for this scene node. | |
virtual iSceneNode * | GetParent () const =0 |
Get the parent scene node. | |
virtual iCamera * | QueryCamera ()=0 |
Get the corresponding camera. | |
virtual iLight * | QueryLight ()=0 |
Get the corresponding light. | |
virtual iMeshWrapper * | QueryMesh ()=0 |
Get the corresponding mesh. | |
virtual void | SetParent (iSceneNode *parent)=0 |
Set the parent scene node. |
This interface represents a node in the scene graph.
It basically represents an object, light, or camera. The scene graph is build out of scene nodes and movables.
When you attach a scene node to another, then the relative position of the two nodes will be kept constant. So, when you move a parent node then the position of the children will be updated automatically. If the parent node is added or removed from a sector then the children will be updated consequently too.
Once attached to a parent node, the transform of the iMovable of the node will be interpreted as the relative position bewteen the child and its parent.
Main ways to get pointers to this interface:
Main users of this interface:
Definition at line 73 of file scenenode.h.
virtual const csRefArray<iSceneNode>& iSceneNode::GetChildren | ( | ) | const [pure virtual] |
The children of this scene node.
virtual csPtr<iSceneNodeArray> iSceneNode::GetChildrenArray | ( | ) | const [pure virtual] |
The children of this scene node.
virtual iMovable* iSceneNode::GetMovable | ( | ) | const [pure virtual] |
Get the movable for this scene node.
The transform of the movable is defined in world coordinates if this node has not parent. Otherwise, the transform is defined relative to the parent node.
virtual iSceneNode* iSceneNode::GetParent | ( | ) | const [pure virtual] |
Get the parent scene node.
virtual iCamera* iSceneNode::QueryCamera | ( | ) | [pure virtual] |
Get the corresponding camera.
Returns 0 if this is not a node for a camera.
virtual iLight* iSceneNode::QueryLight | ( | ) | [pure virtual] |
Get the corresponding light.
Returns 0 if this is not a node for a light.
virtual iMeshWrapper* iSceneNode::QueryMesh | ( | ) | [pure virtual] |
Get the corresponding mesh.
Returns 0 if this is not a node for a mesh.
virtual void iSceneNode::SetParent | ( | iSceneNode * | parent | ) | [pure virtual] |
Set the parent scene node.