Home | Namespaces | Hierarchy | Alphabetical List | Class list | Files | Namespace Members | Class members | File members | Tutorials

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.

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:
tesselationCylinder Number of quads composing the cylinder.
tesselationCone Number of triangles composing the cone's roof.
height Total height of the arrow
cylinderHeight Total height of the cylinder, should be lesser than total height
widthCylinder Diameter of the cylinder
widthCone Diameter of the cone's base, should be not smaller than the cylinder's diameter
colorCylinder color of the cylinder
colorCone color 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:
radius Radius of the cone.
length Length of the cone.
tesselation Number of quads around the circumference of the cone.
colorTop The color of the top of the cone.
colorBottom The 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:
size Dimensions 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:
radius Radius of the cylinder.
length Length of the cylinder.
tesselation Number of quads around the circumference of the cylinder.
color The color of the cylinder.
closeTop If 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:
tileSize The size of each tile.
tileCount The number of tiles in each dimension.
material The material to apply to the mesh.
hillHeight The maximum height of the hills.
countHills The number of hills along each dimension.
textureRepeatCount The 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:
tileSize The size of each tile.
tileCount The number of tiles in each dimension.
material The material to apply to the mesh.
textureRepeatCount The 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:
radius Radius of the sphere
polyCountX Number of quads used for the horizontal tiling
polyCountY Number 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:
texture The texture to apply to the terrain.
heightmap An 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.
stretchSize The 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
maxHeight The maximum height of the terrain.
driver The 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:
subdivideU Horizontal patch count.
subdivideV Vertical patch count.
footColor Color at the bottom of the light.
tailColor Color at the mid of the light.
lpDistance Virtual distance of the light point for normals.
lightDim Dimensions 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 Sun Oct 24 12:42:07 2010 by Doxygen (1.6.2)