Irrlicht 3D Engine: irr::scene::IMesh Class Reference

| Irrlicht 3D Engine |

Public Member Functions
irr::scene::IMesh Class Reference

Class which holds the geometry of an object. More...

`#include <IMesh.h>`

Inheritance diagram for irr::scene::IMesh:

List of all members.

## Public Member Functions

- virtual const core::aabbox3d
  < f32 > & getBoundingBox () const =0
    Get an axis aligned bounding box of the mesh.
- virtual IMeshBuffer * getMeshBuffer (u32 nr) const =0
    Get pointer to a mesh buffer.
- virtual IMeshBuffer * getMeshBuffer (const video::SMaterial &material) const =0
    Get pointer to a mesh buffer which fits a material.
- virtual u32 getMeshBufferCount () const =0
    Get the amount of mesh buffers.
- virtual void setBoundingBox (const core::aabbox3df &box)=0
    Set user-defined axis aligned bounding box.
- virtual void setDirty (E_BUFFER_TYPE buffer=EBT_VERTEX_AND_INDEX)=0
    Flag the meshbuffer as changed, reloads hardware buffers.
- virtual void setHardwareMappingHint (E_HARDWARE_MAPPING newMappingHint, E_BUFFER_TYPE buffer=EBT_VERTEX_AND_INDEX)=0
    Set the hardware mapping hint.
- virtual void setMaterialFlag (video::E_MATERIAL_FLAG flag, bool newvalue)=0
    Sets a flag of all contained materials to a new value.

## Detailed Description

Class which holds the geometry of an object.

An IMesh is nothing more than a collection of some mesh buffers (IMeshBuffer). SMesh is a simple implementation of an IMesh. A mesh is usually added to an IMeshSceneNode in order to be rendered.

Definition at line 23 of file IMesh.h.

## Member Function Documentation

virtual const core::aabbox3d<f32>& irr::scene::IMesh::getBoundingBox | ( |  | ) | const`[pure virtual]`

Get an axis aligned bounding box of the mesh.

Returns:
  Bounding box of this mesh.

Implemented in irr::scene::SAnimatedMesh, and irr::scene::SMesh.

virtual IMeshBuffer* irr::scene::IMesh::getMeshBuffer | ( | u32 | nr | ) | const`[pure virtual]`

Get pointer to a mesh buffer.

Parameters:

  nr,: | Zero based index of the mesh buffer. The maximum value is getMeshBufferCount() - 1;

Returns:
  Pointer to the mesh buffer or 0 if there is no such mesh buffer.

Implemented in irr::scene::SAnimatedMesh, and irr::scene::SMesh.

Referenced by irr::scene::IMeshManipulator::apply().

virtual IMeshBuffer* irr::scene::IMesh::getMeshBuffer | ( | const video::SMaterial & | material | ) | const`[pure virtual]`

Get pointer to a mesh buffer which fits a material.

Parameters:

  material,: | material to search for

Returns:
  Pointer to the mesh buffer or 0 if there is no such mesh buffer.

Implemented in irr::scene::SAnimatedMesh, and irr::scene::SMesh.

virtual u32 irr::scene::IMesh::getMeshBufferCount | ( |  | ) | const`[pure virtual]`

Get the amount of mesh buffers.

Returns:
  Amount of mesh buffers (IMeshBuffer) in this mesh.

Implemented in irr::scene::SAnimatedMesh, and irr::scene::SMesh.

Referenced by irr::scene::IMeshManipulator::apply().

virtual void irr::scene::IMesh::setBoundingBox | ( | const core::aabbox3df & | box | ) | `[pure virtual]`

Set user-defined axis aligned bounding box.

Parameters:

  box | New bounding box to use for the mesh.

Implemented in irr::scene::SAnimatedMesh, and irr::scene::SMesh.

Referenced by irr::scene::IMeshManipulator::apply().

virtual void irr::scene::IMesh::setDirty | ( | E_BUFFER_TYPE | buffer = `EBT_VERTEX_AND_INDEX` | ) | `[pure virtual]`

Flag the meshbuffer as changed, reloads hardware buffers.

This method has to be called every time the vertices or indices have changed. Otherwise, changes won't be updated on the GPU in the next render cycle.

Implemented in irr::scene::SAnimatedMesh, and irr::scene::SMesh.

virtual void irr::scene::IMesh::setHardwareMappingHint | ( | E_HARDWARE_MAPPING | newMappingHint,
|  | E_BUFFER_TYPE | buffer = `EBT_VERTEX_AND_INDEX`
| ) |  | `[pure virtual]`

Set the hardware mapping hint.

This methods allows to define optimization hints for the hardware. This enables, e.g., the use of hardware buffers on pltforms that support this feature. This can lead to noticeable performance gains.

Implemented in irr::scene::SAnimatedMesh, and irr::scene::SMesh.

virtual void irr::scene::IMesh::setMaterialFlag | ( | video::E_MATERIAL_FLAG | flag,
|  | bool | newvalue
| ) |  | `[pure virtual]`

Sets a flag of all contained materials to a new value.

Parameters:

  flag,: | Flag to set in all materials.
  newvalue,: | New value to set in all materials.

Implemented in irr::scene::SAnimatedMesh, and irr::scene::SMesh.

The documentation for this class was generated from the following file:

- IMesh.h