28 #ifndef __MeshManager_H__
29 #define __MeshManager_H__
42 class MeshSerializerListener;
65 void _initialise(
void);
86 bool vertexBufferShadowed =
true,
bool indexBufferShadowed =
true);
112 bool vertexBufferShadowed =
true,
bool indexBufferShadowed =
true);
138 bool vertexBufferShadowed =
true,
bool indexBufferShadowed =
true);
199 int xsegments = 1,
int ysegments = 1,
200 bool normals =
true,
unsigned short numTexCoordSets = 1,
204 bool vertexShadowBuffer =
true,
bool indexShadowBuffer =
true);
257 MeshPtr createCurvedIllusionPlane(
260 int xsegments = 1,
int ysegments = 1,
261 bool normals =
true,
unsigned short numTexCoordSets = 1,
266 bool vertexShadowBuffer =
true,
bool indexShadowBuffer =
true,
267 int ySegmentsToKeep = -1);
313 int xsegments = 1,
int ysegments = 1,
314 bool normals =
false,
unsigned short numTexCoordSets = 1,
318 bool vertexShadowBuffer =
true,
bool indexShadowBuffer =
true);
357 const String& name,
const String& groupName,
void* controlPointBuffer,
364 bool vbUseShadow =
true,
bool ibUseShadow =
true);
369 void setPrepareAllMeshesForShadowVolumes(
bool enable);
371 bool getPrepareAllMeshesForShadowVolumes(
void);
409 Real getBoundsPaddingFactor(
void);
413 void setBoundsPaddingFactor(
Real paddingFactor);
434 void tesselate2DMesh(
SubMesh* pSub,
unsigned short meshWidth,
unsigned short meshHeight,
435 bool doubleSided =
false,
437 bool indexSysMem =
false);
439 void createPrefabPlane(
void);
440 void createPrefabCube(
void);
441 void createPrefabSphere(
void);
unsigned short numTexCoordSets
float Real
Software floating point type.
bool mPrepAllMeshesForShadowVolumes
map< String, String >::type NameValuePairList
Name / value parameter pair (first = name, second = value)
Defines a plane in 3D space.
Template class for creating single-instance global classes.
Combination of HBU_STATIC and HBU_WRITE_ONLY.
Interface describing a manual resource loader.
MeshSerializerListener * mListener
Implementation of a Quaternion, i.e.
Specialisation of SharedPtr to allow SharedPtr to be assigned to PatchMeshPtr.
MeshBuildType
Enum identifying the types of manual mesh built by this manager.
HardwareBuffer::Usage vertexBufferUsage
static const Quaternion IDENTITY
map< Resource *, MeshBuildParams >::type MeshBuildParamsMap
Map from resource pointer to parameter set.
MeshBuildParamsMap mMeshBuildParams
Combination of HBU_DYNAMIC and HBU_WRITE_ONLY.
std::pair< ResourcePtr, bool > ResourceCreateOrRetrieveResult
Usage
Enums describing buffer usage; not mutually exclusive.
HardwareBuffer::Usage indexBufferUsage
Defines a part of a complete mesh.
Saved parameters used to (re)build a manual mesh built by this class.
Standard 3-dimensional vector.
Abstract class representing a loadable resource (e.g.
unsigned long long int ResourceHandle
This class declares the format of a set of vertex inputs, which can be issued to the rendering API th...
Handles the management of mesh resources.
Defines a generic resource handler.
static const Vector3 UNIT_Y
The side from which u goes right and v goes up (as in texture coords)
Specialisation of SharedPtr to allow SharedPtr to be assigned to MeshPtr.
Real mBoundsPaddingFactor