Models::ShapeNodeInstance Class Reference
#include <shapenodeinstance.h>

Detailed Description
The ShapeNodeInstance actually renders a static shape, and holds all the necessary per-instance state to do so.(C) 2007 Radon Labs GmbH
Public Member Functions | |
| ShapeNodeInstance () | |
| constructor | |
| virtual | ~ShapeNodeInstance () |
| destructor | |
| virtual void | Render () |
| perform rendering | |
| virtual void | ApplyState () |
| apply per-instance state prior to rendering | |
|
Ptr < CoreGraphics::ShaderVariableInstance > | CreateShaderVariableInstance (const CoreGraphics::ShaderVariable::Semantic &semantic) |
| instanciate a shader variable by semantic | |
| bool | HasShaderVariableInstance (const CoreGraphics::ShaderVariable::Semantic &semantic) const |
| return true if a shader variable has been instantiated | |
|
const Ptr < CoreGraphics::ShaderVariableInstance > & | GetShaderVariableInstance (const CoreGraphics::ShaderVariable::Semantic &semantic) const |
| get a shader variable instance | |
| virtual void | Update () |
| perform per-frame updates | |
| void | SetPosition (const Math::point &p) |
| set position | |
| const Math::point & | GetPosition () const |
| get position | |
| void | SetRotate (const Math::quaternion &r) |
| set rotate quaternion | |
| const Math::quaternion & | GetRotate () const |
| get rotate quaternion | |
| void | SetScale (const Math::vector &s) |
| set scale | |
| const Math::vector & | GetScale () const |
| get scale | |
| void | SetRotatePivot (const Math::point &p) |
| set rotate pivot | |
| const Math::point & | GetRotatePivot () const |
| get rotate pivot | |
| void | SetScalePivot (const Math::point &p) |
| set scale pivot | |
| const Math::point & | GetScalePivot () const |
| get scale pivot | |
| const Math::matrix44 & | GetLocalTransform () |
| get resulting local transform matrix in local parent space | |
| const Math::matrix44 & | GetModelTransform () const |
| get model space transform (valid after Update()) | |
| bool | HasParent () const |
| return true if node has a parent | |
|
const Ptr < ModelNodeInstance > & | GetParent () const |
| get parent node | |
|
const Util::Array < Ptr < ModelNodeInstance > > & | GetChildren () const |
| get child nodes | |
| bool | IsAttachedToModelInstance () const |
| return true if attached to ModelInstance | |
|
const Ptr < ModelInstance > & | GetModelInstance () const |
| get the ModelInstance we are attached to | |
| const Ptr< ModelNode > & | GetModelNode () const |
| get the ModelNode we're associated with | |
| virtual void | SetVisible (bool b) |
| set visible, used by charactersystem | |
| bool | IsVisible () const |
| is visible | |
| int | GetRefCount () const |
| get the current refcount | |
| void | AddRef () |
| increment refcount by one | |
| void | Release () |
| decrement refcount and destroy object if refcount is zero | |
| bool | IsInstanceOf (const Rtti &rtti) const |
| return true if this object is instance of given class | |
| bool | IsInstanceOf (const Util::String &className) const |
| return true if this object is instance of given class by string | |
| bool | IsInstanceOf (const Util::FourCC &classFourCC) const |
| return true if this object is instance of given class by fourcc | |
| bool | IsA (const Rtti &rtti) const |
| return true if this object is instance of given class, or a derived class | |
| bool | IsA (const Util::String &rttiName) const |
| return true if this object is instance of given class, or a derived class, by string | |
| bool | IsA (const Util::FourCC &rttiFourCC) const |
| return true if this object is instance of given class, or a derived class, by fourcc | |
| const Util::String & | GetClassName () const |
| get the class name | |
| Util::FourCC | GetClassFourCC () const |
| get the class FourCC code | |
Static Public Member Functions | |
| static void | DumpRefCountingLeaks () |
| dump refcounting leaks, call at end of application (NEBULA3_DEBUG builds only!) | |
Protected Member Functions | |
| virtual void | OnNotifyVisible (IndexT frameIndex) |
| notify that we are visible | |
| virtual void | OnAttachToModelInstance (const Ptr< ModelInstance > &inst, const Ptr< ModelNode > &node, const Ptr< ModelNodeInstance > &parentNodeInst) |
| called when attached to ModelInstance | |
| virtual void | OnRemoveFromModelInstance () |
| called when removed from ModelInstance | |
| void | SetParent (const Ptr< ModelNodeInstance > &p) |
| set parent node | |
| void | AddChild (const Ptr< ModelNodeInstance > &c) |
| add a child node | |
| virtual void | RenderDebug () |
| render node specific debug shape | |
| void | SetChildrenVisiblity (ModelNodeInstance *parent, bool b) |
| set visible flag of children | |
Member Function Documentation
| void Models::TransformNodeInstance::Update | ( | ) | [virtual, inherited] |
perform per-frame updates
The update method should first invoke any animators which change per-instance attributes (this is done in the parent class). Then the local space transforms must be flattened into model space.
Reimplemented from Models::ModelNodeInstance.
Reimplemented in Models::CharacterNodeInstance, Models::ParticleSystemNodeInstance, and Models::SkinShapeNodeInstance.
| void Models::ModelNodeInstance::SetVisible | ( | bool | b | ) | [inline, virtual, inherited] |
set visible, used by charactersystem
Set visibility of node and its children, should not be call per frame!
Reimplemented in Models::SkinShapeNodeInstance.
| int Core::RefCounted::GetRefCount | ( | ) | const [inline, inherited] |
get the current refcount
Return the current refcount of the object.
| void Core::RefCounted::AddRef | ( | ) | [inline, inherited] |
increment refcount by one
Increment the refcount of the object.
| void Core::RefCounted::Release | ( | ) | [inline, inherited] |
decrement refcount and destroy object if refcount is zero
Decrement the refcount and destroy object if refcount is zero.
| const Util::String & Core::RefCounted::GetClassName | ( | ) | const [inline, inherited] |
get the class name
Get the class name of the object.
| Util::FourCC Core::RefCounted::GetClassFourCC | ( | ) | const [inline, inherited] |
get the class FourCC code
Get the class FourCC of the object.
| void Core::RefCounted::DumpRefCountingLeaks | ( | ) | [static, inherited] |
dump refcounting leaks, call at end of application (NEBULA3_DEBUG builds only!)
This method should be called as the very last before an application exits.