Home | Namespaces | Hierarchy | Alphabetical List | Class list | Files | Namespace Members | Class members | File members | Tutorials
Public Member Functions
irr::scene::IGeometryCreator Class Reference

Helper class for creating geometry on the fly. More...

#include <IGeometryCreator.h>

Inheritance diagram for irr::scene::IGeometryCreator:
irr::IReferenceCounted

List of all members.

Public Member Functions

virtual IMeshcreateArrowMesh (const u32 tesselationCylinder=4, const u32 tesselationCone=8, const f32 height=1.f, const f32 cylinderHeight=0.6f, const f32 widthCylinder=0.05f, const f32 widthCone=0.3f, const video::SColor colorCylinder=0xFFFFFFFF, const video::SColor colorCone=0xFFFFFFFF) const =0
 Create an arrow mesh, composed of a cylinder and a cone.
virtual IMeshcreateConeMesh (f32 radius, f32 length, u32 tesselation, const video::SColor &colorTop=video::SColor(0xffffffff), const video::SColor &colorBottom=video::SColor(0xffffffff), f32 oblique=0.f) const =0
 Create a cone mesh.
virtual IMeshcreateCubeMesh (const core::vector3df &size=core::vector3df(5.f, 5.f, 5.f)) const =0
 Creates a simple cube mesh.
virtual IMeshcreateCylinderMesh (f32 radius, f32 length, u32 tesselation, const video::SColor &color=video::SColor(0xffffffff), bool closeTop=true, f32 oblique=0.f) const =0
 Create a cylinder mesh.
virtual IMeshcreateHillPlaneMesh (const core::dimension2d< f32 > &tileSize, const core::dimension2d< u32 > &tileCount, video::SMaterial *material, f32 hillHeight, const core::dimension2d< f32 > &countHills, const core::dimension2d< f32 > &textureRepeatCount) const =0
 Create a pseudo-random mesh representing a hilly terrain.
IMeshcreatePlaneMesh (const core::dimension2d< f32 > &tileSize, const core::dimension2d< u32 > &tileCount, video::SMaterial *material, const core::dimension2d< f32 > &textureRepeatCount) const
 Create a simple rectangular textured plane mesh.
virtual IMeshcreateSphereMesh (f32 radius=5.f, u32 polyCountX=16, u32 polyCountY=16) const =0
 Create a sphere mesh.
virtual IMeshcreateTerrainMesh (video::IImage *texture, video::IImage *heightmap, const core::dimension2d< f32 > &stretchSize, f32 maxHeight, video::IVideoDriver *driver, const core::dimension2d< u32 > &defaultVertexBlockSize, bool debugBorders=false) const =0
 Create a terrain mesh from an image representing a heightfield.
virtual IMeshcreateVolumeLightMesh (const u32 subdivideU=32, const u32 subdivideV=32, const video::SColor footColor=0xffffffff, const video::SColor tailColor=0xffffffff, const f32 lpDistance=8.f, const core::vector3df &lightDim=core::vector3df(1.f, 1.2f, 1.f)) const =0
 Create a volume light mesh.
- Public Member Functions inherited from irr::IReferenceCounted
bool drop () const
 Drops the object. Decrements the reference counter by one.
const c8getDebugName () const
 Returns the debug name of the object.
s32 getReferenceCount () const
 Get the reference count.
void grab () const
 Grabs the object. Increments the reference counter by one.
 IReferenceCounted ()
 Constructor.
virtual ~IReferenceCounted ()
 Destructor.

Additional Inherited Members

- Protected Member Functions inherited from irr::IReferenceCounted
void setDebugName (const c8 *newName)
 Sets the debug name of the object.

Detailed Description

Helper class for creating geometry on the fly.

You can get an instance of this class through ISceneManager::getGeometryCreator()

Definition at line 25 of file IGeometryCreator.h.


Member Function Documentation

virtual IMesh* irr::scene::IGeometryCreator::createArrowMesh ( const u32  tesselationCylinder = 4,
const u32  tesselationCone = 8,
const f32  height = 1.f,
const f32  cylinderHeight = 0.6f,
const f32  widthCylinder = 0.05f,
const f32  widthCone = 0.3f,
const video::SColor  colorCylinder = 0xFFFFFFFF,
const video::SColor  colorCone = 0xFFFFFFFF 
) const
pure virtual

Create an arrow mesh, composed of a cylinder and a cone.

Parameters:
tesselationCylinderNumber of quads composing the cylinder.
tesselationConeNumber of triangles composing the cone's roof.
heightTotal height of the arrow
cylinderHeightTotal height of the cylinder, should be lesser than total height
widthCylinderDiameter of the cylinder
widthConeDiameter of the cone's base, should be not smaller than the cylinder's diameter
colorCylindercolor of the cylinder
colorConecolor of the cone
Returns:
Generated mesh.
virtual IMesh* irr::scene::IGeometryCreator::createConeMesh ( f32  radius,
f32  length,
u32  tesselation,
const video::SColor colorTop = video::SColor(0xffffffff),
const video::SColor colorBottom = video::SColor(0xffffffff),
f32  oblique = 0.f 
) const
pure virtual

Create a cone mesh.

Parameters:
radiusRadius of the cone.
lengthLength of the cone.
tesselationNumber of quads around the circumference of the cone.
colorTopThe color of the top of the cone.
colorBottomThe color of the bottom of the cone.
oblique(to be documented)
Returns:
Generated mesh.
virtual IMesh* irr::scene::IGeometryCreator::createCubeMesh ( const core::vector3df size = core::vector3df(5.f, 5.f, 5.f)) const
pure virtual

Creates a simple cube mesh.

Parameters:
sizeDimensions of the cube.
Returns:
Generated mesh.
virtual IMesh* irr::scene::IGeometryCreator::createCylinderMesh ( f32  radius,
f32  length,
u32  tesselation,
const video::SColor color = video::SColor(0xffffffff),
bool  closeTop = true,
f32  oblique = 0.f 
) const
pure virtual

Create a cylinder mesh.

Parameters:
radiusRadius of the cylinder.
lengthLength of the cylinder.
tesselationNumber of quads around the circumference of the cylinder.
colorThe color of the cylinder.
closeTopIf true, close the ends of the cylinder, otherwise leave them open.
oblique(to be documented)
Returns:
Generated mesh.
virtual IMesh* irr::scene::IGeometryCreator::createHillPlaneMesh ( const core::dimension2d< f32 > &  tileSize,
const core::dimension2d< u32 > &  tileCount,
video::SMaterial material,
f32  hillHeight,
const core::dimension2d< f32 > &  countHills,
const core::dimension2d< f32 > &  textureRepeatCount 
) const
pure virtual

Create a pseudo-random mesh representing a hilly terrain.

Parameters:
tileSizeThe size of each tile.
tileCountThe number of tiles in each dimension.
materialThe material to apply to the mesh.
hillHeightThe maximum height of the hills.
countHillsThe number of hills along each dimension.
textureRepeatCountThe number of times to repeat the material texture along each dimension.
Returns:
Generated mesh.

Referenced by createPlaneMesh().

IMesh* irr::scene::IGeometryCreator::createPlaneMesh ( const core::dimension2d< f32 > &  tileSize,
const core::dimension2d< u32 > &  tileCount,
video::SMaterial material,
const core::dimension2d< f32 > &  textureRepeatCount 
) const
inline

Create a simple rectangular textured plane mesh.

Parameters:
tileSizeThe size of each tile.
tileCountThe number of tiles in each dimension.
materialThe material to apply to the mesh.
textureRepeatCountThe number of times to repeat the material texture along each dimension.
Returns:
Generated mesh.

Definition at line 61 of file IGeometryCreator.h.

References createHillPlaneMesh().

virtual IMesh* irr::scene::IGeometryCreator::createSphereMesh ( f32  radius = 5.f,
u32  polyCountX = 16,
u32  polyCountY = 16 
) const
pure virtual

Create a sphere mesh.

Parameters:
radiusRadius of the sphere
polyCountXNumber of quads used for the horizontal tiling
polyCountYNumber of quads used for the vertical tiling
Returns:
Generated mesh.
virtual IMesh* irr::scene::IGeometryCreator::createTerrainMesh ( video::IImage texture,
video::IImage heightmap,
const core::dimension2d< f32 > &  stretchSize,
f32  maxHeight,
video::IVideoDriver driver,
const core::dimension2d< u32 > &  defaultVertexBlockSize,
bool  debugBorders = false 
) const
pure virtual

Create a terrain mesh from an image representing a heightfield.

Parameters:
textureThe texture to apply to the terrain.
heightmapAn image that will be interpreted as a heightmap. The brightness (average colour) of each pixel is interpreted as a height, with a 255 brightness pixel producing the maximum height.
stretchSizeThe size that each pixel will produce, i.e. a 512x512 heightmap and a stretchSize of (10.f, 20.f) will produce a mesh of size 5120.f x 10240.f
maxHeightThe maximum height of the terrain.
driverThe current video driver.
defaultVertexBlockSize(to be documented)
debugBorders(to be documented)
Returns:
Generated mesh.
virtual IMesh* irr::scene::IGeometryCreator::createVolumeLightMesh ( const u32  subdivideU = 32,
const u32  subdivideV = 32,
const video::SColor  footColor = 0xffffffff,
const video::SColor  tailColor = 0xffffffff,
const f32  lpDistance = 8.f,
const core::vector3df lightDim = core::vector3df(1.f, 1.2f, 1.f) 
) const
pure virtual

Create a volume light mesh.

Parameters:
subdivideUHorizontal patch count.
subdivideVVertical patch count.
footColorColor at the bottom of the light.
tailColorColor at the mid of the light.
lpDistanceVirtual distance of the light point for normals.
lightDimDimensions of the light.
Returns:
Generated mesh.

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

The Irrlicht Engine
The Irrlicht Engine Documentation © 2003-2010 by Nikolaus Gebhardt. Generated on Tue Jun 5 2012 17:58:25 by Doxygen (1.8.1)