10#ifndef __I_TERRAIN_SCENE_NODE_H__
11#define __I_TERRAIN_SCENE_NODE_H__
57 :
ISceneNode (parent, mgr, id, position, rotation, scale) {}
157 s32 smoothFactor=0) =0;
171 bool signedData=
false,
bool floatVals=
false,
s32 width=0,
173 s32 smoothFactor=0) =0;
Axis aligned bounding box in 3d dimensional space.
Interface providing read acess to a file.
Struct for holding a mesh with a single material.
Class which holds the geometry of an object.
The Scene Manager manages scene nodes, mesh recources, cameras and all the other stuff.
A scene node for displaying terrain using the geo mip map algorithm.
virtual const core::aabbox3d< f32 > & getBoundingBox() const =0
Get the bounding box of the terrain.
virtual s32 getCurrentLODOfPatches(core::array< s32 > &LODs) const =0
Populates an array with the CurrentLOD of each patch.
virtual u32 getIndexCount() const =0
Get the number of indices currently in the meshbuffer.
ITerrainSceneNode(ISceneNode *parent, ISceneManager *mgr, s32 id, const core::vector3df &position=core::vector3df(0.0f, 0.0f, 0.0f), const core::vector3df &rotation=core::vector3df(0.0f, 0.0f, 0.0f), const core::vector3df &scale=core::vector3df(1.0f, 1.0f, 1.0f))
Constructor.
virtual IMesh * getMesh()=0
Get pointer to the mesh.
virtual void setLODOfPatch(s32 patchX, s32 patchZ, s32 LOD=0)=0
Manually sets the LOD of a patch.
virtual bool loadHeightMapRAW(io::IReadFile *file, s32 bitsPerPixel=16, bool signedData=false, bool floatVals=false, s32 width=0, video::SColor vertexColor=video::SColor(255, 255, 255, 255), s32 smoothFactor=0)=0
Initializes the terrain data. Loads the vertices from the heightMapFile.
virtual const core::aabbox3d< f32 > & getBoundingBox(s32 patchX, s32 patchZ) const =0
Get the bounding box of a patch.
virtual f32 getHeight(f32 x, f32 y) const =0
Get height of a point of the terrain.
virtual void setDynamicSelectorUpdate(bool bVal)=0
Sets whether or not the node should dynamically update its associated selector when the geomipmap dat...
virtual void scaleTexture(f32 scale=1.0f, f32 scale2=0.0f)=0
Scales the base texture, similar to makePlanarTextureMapping.
virtual const core::vector3df & getTerrainCenter() const =0
Get center of terrain.
virtual void setCameraRotationDelta(f32 delta)=0
Sets the rotation camera threshold.
virtual void getMeshBufferForLOD(IDynamicMeshBuffer &mb, s32 LOD=0) const =0
Gets the meshbuffer data based on a specified level of detail.
virtual bool loadHeightMap(io::IReadFile *file, video::SColor vertexColor=video::SColor(255, 255, 255, 255), s32 smoothFactor=0)=0
Initializes the terrain data. Loads the vertices from the heightMapFile.
virtual s32 getIndicesForPatch(core::array< u32 > &indices, s32 patchX, s32 patchZ, s32 LOD=0)=0
Gets the indices for a specified patch at a specified Level of Detail.
virtual IMeshBuffer * getRenderBuffer()=0
Get pointer to the buffer used by the terrain (most users will not need this)
virtual void setCameraMovementDelta(f32 delta)=0
Sets the movement camera threshold.
virtual bool overrideLODDistance(s32 LOD, f64 newDistance)=0
Override the default generation of distance thresholds.
Class representing a 32 bit ARGB color.
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.
double f64
64 bit floating point variable.
signed int s32
32 bit signed variable.