![]() |
Kochol Game Engine
0.1.0
|
#include <SceneNode.h>
Public Member Functions | |
SceneNode () | |
Constructor. | |
virtual | ~SceneNode () |
Destructor. | |
virtual void | AddChild (SceneNode *child) |
Adds a node as child. | |
virtual void | PreRender (float elapsedTime=0.0f)=0 |
The jobs before rendering like culling and calculate position. | |
virtual void | Render ()=0 |
Render the objects. | |
virtual void | PostRender ()=0 |
The jobs after rendering. | |
virtual void | Draw (bool WithMaterial, bool WithTransform, bool bPosition=true, bool bNormalTexcoord=true, bool bTangentBinormal=true)=0 |
virtual bool | AddEffect (efx::EffectType p, efx::Effect **ppOut) |
virtual void | SetSceneManager (SceneManager *smgr) |
Sets the scene manager and renderer pointer. | |
virtual void | SetPosition (const math::Vector &v) |
Set the position of the scenenode. | |
virtual void | SetRotation (const math::Vector &v) |
Set the rotation of the scenenode. | |
virtual void | SetScale (const math::Vector &v) |
Set the scale of the scenenode. | |
virtual void | SetAutomaticCulling (bool isTrue) |
Set Cutting Enable or Disable. | |
virtual void | SetVisible (bool isVisible) |
Set Visible Enable or Disable. | |
virtual bool | GetVisible () |
Get Visible. | |
virtual bool | IsVisibleInFrame () |
Is it visible in this frame? | |
virtual const math::Vector & | GetPosition () const |
Returns the node position. | |
virtual const math::Vector & | GetRotation () const |
Returns the node rotation. | |
virtual const math::Vector & | GetScale () const |
Returns the node scale. | |
virtual math::Matrix * | GetAbsoluteMatrix () const |
Get the absolute matrix. | |
virtual math::Matrix * | GetFinalMatrix () |
Get the final matrix. | |
virtual u32 | GetMaterialCount () |
Get the count of materials this node has. | |
virtual gfx::Material * | GetMaterial (u32 Index) |
virtual math::Sphere * | GetBoundingBox () |
Returns the node bounding box. | |
virtual math::AABB * | GetAxisAlignedBoundingBox () |
Returns the node Axis aligned bounding box. | |
virtual NodeType | GetType () const |
Returns the node type. | |
virtual void | RemoveChild (SceneNode *child) |
virtual void | RemoveChildren () |
Removes all children of this node. | |
virtual const SceneNode * | GetParent () |
Returns the node parent. | |
virtual void | SetParent (SceneNode *parent) |
Sets the node parent. | |
virtual void | SetName (const char *name) |
Sets the node name. | |
virtual core::String * | GetName () |
Gets the node name. | |
virtual void | SetID (int ID) |
Sets the node ID. | |
virtual int | GetID () |
Gets the node ID. | |
void | EnableShadow (bool enable) |
bool | HasShadow () const |
virtual void | UpdateFinalMat () |
Update final matrix. | |
![]() | |
KgeUnknown () | |
Constructor. | |
virtual | ~KgeUnknown () |
Destructor. | |
virtual void | AddRef () |
Add a reference to the object. | |
virtual void | DecRef () |
Decrease a reference from the object. if its reference count get 0 then the object will destroy. | |
u32 | GetRefCount () |
Return resource reference count. | |
const char * | GetDebugText () |
returns the instance debug text. |
Protected Member Functions | |
virtual bool | HasThisEffect (efx::EffectType p) |
![]() | |
void | SetDebugText (char *text) |
Protected Attributes | |
core::String | m_sName |
int | m_iID |
SceneManager * | m_pSnMan |
gfx::Renderer * | m_pRenderer |
bool | m_bVis |
bool | m_bAutoCulling |
bool | m_bVisFrame |
SceneNode * | m_pParent |
std::vector< SceneNode * > | m_vChilds |
std::vector< int > | m_vEffectType |
std::vector< efx::Effect * > | m_vEffect |
math::Matrix * | m_pAbsMat |
math::Matrix * | m_pFinalMat |
math::Vector | m_Position |
math::Vector | m_Rotation |
math::Vector | m_Scale |
math::Sphere * | m_pBB |
math::AABB * | m_pAABB |
NodeType | m_eNodeType |
bool | m_hasShadow |
Friends | |
class | SceneManager |
In class chizi bishtar az ye Interface nist vali baes mishe ke khili rahat masalan ye tofang ro be daste ye Sarbaz bedid.
Definition at line 59 of file SceneNode.h.
kge::sn::SceneNode::SceneNode | ( | ) |
Constructor.
|
virtual |
Destructor.
|
virtual |
|
inlinevirtual |
Ezafe kardane effect be hamin gereh.
p | Effecti ke mikhahid ezafe konid. |
ppOut | Class Effect sakhte shode. |
Reimplemented in kge::sn::Camera, kge::sn::TileTerrain, kge::sn::Sound2D, kge::sn::Mesh, kge::sn::StaticMesh, kge::sn::AnimatedMesh, kge::sn::Sound3D, and kge::sn::Light.
Definition at line 93 of file SceneNode.h.
|
pure virtual |
Draw the node with/without its Materials and Transforms.
WithMaterial | Draw it with its own materials or not? |
WithMaterial | Draw it with its own Transformations or not? |
Implemented in kge::sn::ParticleSystem, kge::sn::TileTerrain, kge::sn::Camera, kge::sn::AnimatedTexture, kge::sn::Sound2D, kge::sn::Bone, kge::sn::Listener, kge::sn::Mesh, kge::sn::RibbonTrail, kge::sn::StaticMesh, kge::sn::AnimatedMesh, kge::sn::Decal, kge::sn::TPCamera, kge::sn::Light, and kge::sn::Sound3D.
void kge::sn::SceneNode::EnableShadow | ( | bool | enable | ) |
|
virtual |
Get the absolute matrix.
|
inlinevirtual |
Returns the node Axis aligned bounding box.
Definition at line 147 of file SceneNode.h.
|
inlinevirtual |
Returns the node bounding box.
Definition at line 144 of file SceneNode.h.
|
inlinevirtual |
Get the final matrix.
Definition at line 133 of file SceneNode.h.
|
inlinevirtual |
Gets the node ID.
Definition at line 187 of file SceneNode.h.
|
virtual |
Get the node material by its index.
Index | The material index. Some nodes have more than one material. |
Reimplemented in kge::sn::TileTerrain, kge::sn::AnimatedMesh, kge::sn::StaticMesh, and kge::sn::Decal.
|
virtual |
Get the count of materials this node has.
Reimplemented in kge::sn::TileTerrain, kge::sn::AnimatedMesh, and kge::sn::StaticMesh.
|
inlinevirtual |
Gets the node name.
Definition at line 175 of file SceneNode.h.
|
inlinevirtual |
Returns the node parent.
Definition at line 163 of file SceneNode.h.
|
virtual |
Returns the node position.
Reimplemented in kge::sn::TPCamera, kge::sn::Camera, and kge::sn::Light.
|
virtual |
Returns the node rotation.
|
virtual |
Returns the node scale.
|
inlinevirtual |
Returns the node type.
Reimplemented in kge::sn::TPCamera, and kge::sn::Camera.
Definition at line 151 of file SceneNode.h.
|
inlinevirtual |
Get Visible.
Definition at line 115 of file SceneNode.h.
|
inline |
Definition at line 196 of file SceneNode.h.
|
protectedvirtual |
|
inlinevirtual |
Is it visible in this frame?
Definition at line 118 of file SceneNode.h.
|
pure virtual |
The jobs after rendering.
Implemented in kge::sn::ParticleSystem, kge::sn::AnimatedTexture, kge::sn::TileTerrain, kge::sn::Sound2D, kge::sn::Bone, kge::sn::Listener, kge::sn::RibbonTrail, kge::sn::Mesh, kge::sn::Camera, kge::sn::TPCamera, kge::sn::StaticMesh, kge::sn::Decal, kge::sn::Sound3D, kge::sn::AnimatedMesh, and kge::sn::Light.
|
pure virtual |
The jobs before rendering like culling and calculate position.
Implemented in kge::sn::ParticleSystem, kge::sn::AnimatedTexture, kge::sn::TileTerrain, kge::sn::Sound2D, kge::sn::Listener, kge::sn::Bone, kge::sn::RibbonTrail, kge::sn::Camera, kge::sn::Mesh, kge::sn::TPCamera, kge::sn::StaticMesh, kge::sn::Decal, kge::sn::Sound3D, kge::sn::AnimatedMesh, and kge::sn::Light.
|
virtual |
Removes a child from this node.
child | The pointer to the child. |
Delete | If pass true it will be deleted from memory. |
|
virtual |
Removes all children of this node.
|
pure virtual |
Render the objects.
Implemented in kge::sn::ParticleSystem, kge::sn::AnimatedTexture, kge::sn::TileTerrain, kge::sn::Sound2D, kge::sn::Bone, kge::sn::Listener, kge::sn::RibbonTrail, kge::sn::TileTerrain2, kge::sn::Camera, kge::sn::Mesh, kge::sn::TPCamera, kge::sn::StaticMesh, kge::sn::Decal, kge::sn::Sound3D, kge::sn::AnimatedMesh, and kge::sn::Light.
|
inlinevirtual |
Set Cutting Enable or Disable.
Definition at line 109 of file SceneNode.h.
|
inlinevirtual |
Sets the node ID.
Definition at line 181 of file SceneNode.h.
|
inlinevirtual |
|
virtual |
Sets the node parent.
Reimplemented in kge::sn::Bone.
|
virtual |
Set the position of the scenenode.
Reimplemented in kge::sn::Camera, kge::sn::Listener, kge::sn::TPCamera, kge::sn::Light, and kge::sn::Sound3D.
|
virtual |
Set the rotation of the scenenode.
|
virtual |
Set the scale of the scenenode.
|
virtual |
Sets the scene manager and renderer pointer.
|
virtual |
Set Visible Enable or Disable.
|
inlinevirtual |
Update final matrix.
Reimplemented in kge::sn::StaticMesh, and kge::sn::Bone.
Definition at line 199 of file SceneNode.h.
|
friend |
Definition at line 61 of file SceneNode.h.
|
protected |
Definition at line 207 of file SceneNode.h.
|
protected |
Definition at line 207 of file SceneNode.h.
|
protected |
Definition at line 207 of file SceneNode.h.
|
protected |
Definition at line 224 of file SceneNode.h.
|
protected |
Definition at line 225 of file SceneNode.h.
|
protected |
Definition at line 204 of file SceneNode.h.
|
protected |
Definition at line 223 of file SceneNode.h.
|
protected |
Definition at line 217 of file SceneNode.h.
|
protected |
Definition at line 222 of file SceneNode.h.
|
protected |
Definition at line 217 of file SceneNode.h.
|
protected |
Definition at line 219 of file SceneNode.h.
|
protected |
Definition at line 211 of file SceneNode.h.
|
protected |
Definition at line 206 of file SceneNode.h.
|
protected |
Definition at line 205 of file SceneNode.h.
|
protected |
Definition at line 219 of file SceneNode.h.
|
protected |
Definition at line 219 of file SceneNode.h.
|
protected |
Definition at line 203 of file SceneNode.h.
|
protected |
Definition at line 213 of file SceneNode.h.
|
protected |
Definition at line 216 of file SceneNode.h.
|
protected |
Definition at line 214 of file SceneNode.h.