#include <spSceneGraphFamilyTree.hpp>
Public Member Functions | |
SceneGraphFamilyTree () | |
virtual | ~SceneGraphFamilyTree () |
void | addSceneNode (SceneNode *Object) |
Adds the sepcified node to the scene node list. | |
void | addSceneNode (Camera *Object) |
void | addSceneNode (Light *Object) |
void | addSceneNode (RenderNode *Object) |
void | removeSceneNode (SceneNode *Object) |
Removes the sepcified node from the scene node list. | |
void | removeSceneNode (Camera *Object) |
void | removeSceneNode (Light *Object) |
void | removeSceneNode (RenderNode *Object) |
void | addRootNode (SceneNode *Object) |
Adds a root SceneNode object. This is basically used for child tree scene managers. | |
void | removeRootNode (SceneNode *Object) |
Removes a root SceneNode object. This is basically used for child tree scene managers. | |
virtual void | render () |
Protected Member Functions | |
void | updateRootNode (SceneNode *Object) |
void | renderRootNode (SceneNode *Object) |
Protected Attributes | |
std::vector< SceneNode * > | RootNodeList_ |
The SceneGraphFamilyTree is used for simple scenes with a child tree hierarchy. Each root object will be passed through and all other objects ordered under will be passed in a tree hierarchy. Advantage is that the parent system does not affect the performance and large tree hierarchies are no problems. Disadvantage is that depth sorting to avoid alpha blending problems is more difficult.
sp::scene::SceneGraphFamilyTree::SceneGraphFamilyTree | ( | ) |
virtual sp::scene::SceneGraphFamilyTree::~SceneGraphFamilyTree | ( | ) | [virtual] |
void sp::scene::SceneGraphFamilyTree::addRootNode | ( | SceneNode * | Object | ) | [virtual] |
Adds a root SceneNode object. This is basically used for child tree scene managers.
Reimplemented from sp::scene::SceneGraph.
void sp::scene::SceneGraphFamilyTree::addSceneNode | ( | SceneNode * | Object | ) | [virtual] |
Adds the sepcified node to the scene node list.
Reimplemented from sp::scene::SceneGraph.
void sp::scene::SceneGraphFamilyTree::addSceneNode | ( | Camera * | Object | ) | [virtual] |
Reimplemented from sp::scene::SceneGraph.
void sp::scene::SceneGraphFamilyTree::addSceneNode | ( | RenderNode * | Object | ) | [virtual] |
Reimplemented from sp::scene::SceneGraph.
void sp::scene::SceneGraphFamilyTree::addSceneNode | ( | Light * | Object | ) | [virtual] |
Reimplemented from sp::scene::SceneGraph.
void sp::scene::SceneGraphFamilyTree::removeRootNode | ( | SceneNode * | Object | ) | [virtual] |
Removes a root SceneNode object. This is basically used for child tree scene managers.
Reimplemented from sp::scene::SceneGraph.
void sp::scene::SceneGraphFamilyTree::removeSceneNode | ( | RenderNode * | Object | ) | [virtual] |
Reimplemented from sp::scene::SceneGraph.
void sp::scene::SceneGraphFamilyTree::removeSceneNode | ( | Light * | Object | ) | [virtual] |
Reimplemented from sp::scene::SceneGraph.
void sp::scene::SceneGraphFamilyTree::removeSceneNode | ( | SceneNode * | Object | ) | [virtual] |
Removes the sepcified node from the scene node list.
Reimplemented from sp::scene::SceneGraph.
void sp::scene::SceneGraphFamilyTree::removeSceneNode | ( | Camera * | Object | ) | [virtual] |
Reimplemented from sp::scene::SceneGraph.
virtual void sp::scene::SceneGraphFamilyTree::render | ( | ) | [virtual] |
Renders the whole scene without using a camera object. This is particular used when a scene manager is a child of another one.
Implements sp::scene::SceneGraph.
void sp::scene::SceneGraphFamilyTree::renderRootNode | ( | SceneNode * | Object | ) | [protected] |
void sp::scene::SceneGraphFamilyTree::updateRootNode | ( | SceneNode * | Object | ) | [protected] |
std::vector<SceneNode*> sp::scene::SceneGraphFamilyTree::RootNodeList_ [protected] |