5#ifndef __S_ANIMATED_MESH_H_INCLUDED__
6#define __S_ANIMATED_MESH_H_INCLUDED__
126 return Meshes[0]->getMeshBufferCount();
135 return Meshes[0]->getMeshBuffer(nr);
147 return Meshes[0]->getMeshBuffer(material);
bool drop() const
Drops the object. Decrements the reference counter by one.
void grab() const
Grabs the object. Increments the reference counter by one.
void setDebugName(const c8 *newName)
Sets the debug name of the object.
Axis aligned bounding box in 3d dimensional space.
void addInternalBox(const aabbox3d< T > &b)
Adds another bounding box.
void reset(T x, T y, T z)
Resets the bounding box to a one-point box.
Interface for an animated mesh.
Struct for holding a mesh with a single material.
Class which holds the geometry of an object.
Struct for holding parameters for a material renderer.
E_ANIMATED_MESH_TYPE
Possible types of (animated) meshes.
@ EAMT_UNKNOWN
Unknown animated mesh type.
@ EBT_VERTEX_AND_INDEX
Change both vertex and index mapping to the same value.
E_MATERIAL_FLAG
Material flags.
Everything in the Irrlicht Engine can be found in this namespace.
float f32
32 bit floating point variable.
unsigned int u32
32 bit unsigned variable.
signed int s32
32 bit signed variable.
Simple implementation of the IAnimatedMesh interface.
E_ANIMATED_MESH_TYPE Type
The type of the mesh.
virtual u32 getMeshBufferCount() const
returns amount of mesh buffers.
virtual IMesh * getMesh(s32 frame, s32 detailLevel=255, s32 startFrameLoop=-1, s32 endFrameLoop=-1)
Returns the IMesh interface for a frame.
virtual void setDirty(E_BUFFER_TYPE buffer=EBT_VERTEX_AND_INDEX)
flags the meshbuffer as changed, reloads hardware buffers
virtual E_ANIMATED_MESH_TYPE getMeshType() const
Returns the type of the animated mesh.
void addMesh(IMesh *mesh)
adds a Mesh
virtual u32 getFrameCount() const
Gets the frame count of the animated mesh.
virtual ~SAnimatedMesh()
destructor
virtual const core::aabbox3d< f32 > & getBoundingBox() const
Returns an axis aligned bounding box of the mesh.
virtual void setHardwareMappingHint(E_HARDWARE_MAPPING newMappingHint, E_BUFFER_TYPE buffer=EBT_VERTEX_AND_INDEX)
set the hardware mapping hint, for driver
void recalculateBoundingBox()
Recalculates the bounding box.
virtual IMeshBuffer * getMeshBuffer(u32 nr) const
returns pointer to a mesh buffer
SAnimatedMesh(scene::IMesh *mesh=0, scene::E_ANIMATED_MESH_TYPE type=scene::EAMT_UNKNOWN)
constructor
virtual f32 getAnimationSpeed() const
Gets the default animation speed of the animated mesh.
virtual IMeshBuffer * getMeshBuffer(const video::SMaterial &material) const
Returns pointer to a mesh buffer which fits a material.
virtual void setBoundingBox(const core::aabbox3df &box)
set user axis aligned bounding box
core::aabbox3d< f32 > Box
The bounding box of this mesh.
core::array< IMesh * > Meshes
All meshes defining the animated mesh.
virtual void setAnimationSpeed(f32 fps)
Gets the frame count of the animated mesh.
f32 FramesPerSecond
Default animation speed of this mesh.
virtual void setMaterialFlag(video::E_MATERIAL_FLAG flag, bool newvalue)
Set a material flag for all meshbuffers of this mesh.