 |
Irrlicht 3D Engine
|
|
Go to the documentation of this file.
5 #ifndef __I_ANIMATED_MESH_SCENE_NODE_H_INCLUDED__
6 #define __I_ANIMATED_MESH_SCENE_NODE_H_INCLUDED__
17 class IShadowVolumeSceneNode;
32 class IAnimatedMeshSceneNode;
62 :
ISceneNode(parent, mgr, id, position, rotation, scale) {}
108 s32 id=-1,
bool zfailmethod=
true,
f32 infinity=1000.0f) = 0;
169 virtual void setLoopMode(
bool playAnimationLooped) = 0;
210 virtual void animateJoints(
bool CalculateAbsolutePositions=
true) = 0;
virtual void setReadOnlyMaterials(bool readonly)=0
Sets if the scene node should not copy the materials of the mesh but use them in a read only style.
@ EJUOR_CONTROL
control joint positions in the mesh (eg. ragdolls, or set the animation from animateJoints() )
IAnimatedMeshSceneNode(ISceneNode *parent, ISceneManager *mgr, s32 id, const core::vector3df &position=core::vector3df(0, 0, 0), const core::vector3df &rotation=core::vector3df(0, 0, 0), const core::vector3df &scale=core::vector3df(1.0f, 1.0f, 1.0f))
Constructor.
char c8
8 bit character variable.
virtual bool isReadOnlyMaterials() const =0
Returns if the scene node should not copy the materials of the mesh but use them in a read only style...
virtual IAnimatedMesh * getMesh(void)=0
Returns the current mesh.
virtual IBoneSceneNode * getJointNode(const c8 *jointName)=0
Get a pointer to a joint in the mesh (if the mesh is a bone based mesh).
virtual void setTransitionTime(f32 Time)=0
Sets the transition time in seconds.
virtual void setAnimationEndCallback(IAnimationEndCallBack *callback=0)=0
Sets a callback interface which will be called if an animation playback has ended.
@ EJUOR_READ
get joints positions from the mesh (for attached nodes, etc)
Interface for an animated mesh.
signed int s32
32 bit signed variable.
Interface for bones used for skeletal animation.
virtual void setCurrentFrame(f32 frame)=0
Sets the current frame number.
virtual void setMesh(IAnimatedMesh *mesh)=0
Sets a new mesh.
EMD2_ANIMATION_TYPE
Types of standard md2 animations.
Base class of most objects of the Irrlicht Engine.
virtual const SMD3QuaternionTag * getMD3TagTransformation(const core::stringc &tagname)=0
Get the absolute transformation for a special MD3 Tag if the mesh is a md3 mesh, or the absolutetrans...
virtual ISceneNode * clone(ISceneNode *newParent=0, ISceneManager *newManager=0)=0
Creates a clone of this scene node and its children.
virtual void setAnimationSpeed(f32 framesPerSecond)=0
Sets the speed with which the animation is played.
float f32
32 bit floating point variable.
hold a tag info for connecting meshes
virtual void OnAnimationEnd(IAnimatedMeshSceneNode *node)=0
Will be called when the animation playback has ended.
virtual s32 getEndFrame() const =0
Returns the current end frame number.
virtual void animateJoints(bool CalculateAbsolutePositions=true)=0
animates the joints in the mesh based on the current frame.
virtual void setLoopMode(bool playAnimationLooped)=0
Sets looping mode which is on by default.
virtual void setRenderFromIdentity(bool On)=0
render mesh ignoring its transformation.
Class which holds the geometry of an object.
virtual void setJointMode(E_JOINT_UPDATE_ON_RENDER mode)=0
Set how the joints should be updated on render.
Callback interface for catching events of ended animations.
virtual f32 getAnimationSpeed() const =0
Gets the speed with which the animation is played.
Everything in the Irrlicht Engine can be found in this namespace.
virtual f32 getFrameNr() const =0
Returns the currently displayed frame number.
unsigned int u32
32 bit unsigned variable.
The Scene Manager manages scene nodes, mesh recources, cameras and all the other stuff.
virtual bool setFrameLoop(s32 begin, s32 end)=0
Sets the frame numbers between the animation is looped.
virtual bool getLoopMode() const =0
returns the current loop mode
virtual ~IAnimatedMeshSceneNode()
Destructor.
virtual s32 getStartFrame() const =0
Returns the current start frame number.
Scene node for rendering a shadow volume into a stencil buffer.
virtual bool setMD2Animation(EMD2_ANIMATION_TYPE anim)=0
Starts a default MD2 animation.
Scene node capable of displaying an animated mesh and its shadow.
virtual IShadowVolumeSceneNode * addShadowVolumeSceneNode(const IMesh *shadowMesh=0, s32 id=-1, bool zfailmethod=true, f32 infinity=1000.0f)=0
Creates shadow volume scene node as child of this node.
virtual u32 getJointCount() const =0
Gets joint count.