|
|
|
|
Documentation |
|
Main Page Namespace List Class Hierarchy Alphabetical List Compound List File List Namespace Members Compound Members File Members Related Pages Search
NL3D::CMeshBlockManager Class ReferenceA class used to render instances sorted by MeshGeom first, then per material, where possible.
More...
#include <mesh_block_manager.h>
List of all members.
Detailed Description
A class used to render instances sorted by MeshGeom first, then per material, where possible.
This allow optimisation because less renderState swapping are needed. WARNING: if you add MeshGeom to 2 different CMeshBlockManager at same times, it won't work, and will certainly crashes (not checked/assert).
NB VBHeap part works, even if no User interface use it. It don't give greate performance Add, but will may be used.
-
Author:
-
Lionel Berenguier , Nevrax France
-
Date:
-
2002
Definition at line 56 of file mesh_block_manager.h.
Member Typedef Documentation
typedef std::map<uint, uint> NL3D::CMeshBlockManager::TVBHeapMap [private]
|
|
|
Heap Map from vertexFormat to VBHeap Id. NB: do not contains 0th.
Definition at line 122 of file mesh_block_manager.h. |
Constructor & Destructor Documentation
NL3D::CMeshBlockManager::CMeshBlockManager |
( |
|
) |
|
|
NL3D::CMeshBlockManager::~CMeshBlockManager |
( |
|
) |
|
|
Member Function Documentation
bool NL3D::CMeshBlockManager::addVBHeap |
( |
IDriver * |
drv, |
|
|
uint |
vertexFormat, |
|
|
uint |
maxVertices |
|
) |
|
|
|
Add a Heap for a given vertexFormat.
Any meshGeom added with addInstance() which has this vertex Format may fit in this heap. return false and fail if the heap can't be allocated or if the heap with same vertexFormat still exist.
Definition at line 374 of file mesh_block_manager.cpp.
References _VBHeapBlocks, and _VBHeapMap. |
void NL3D::CMeshBlockManager::allocateMeshVBHeap |
( |
IMeshGeom * |
mesh |
) |
[private] |
|
void NL3D::CMeshBlockManager::freeMeshVBHeap |
( |
IMeshGeom * |
mesh |
) |
|
|
void NL3D::CMeshBlockManager::releaseVBHeaps |
( |
|
) |
|
|
void NL3D::CMeshBlockManager::render |
( |
IMeshGeom * |
meshGeom, |
|
|
std::vector< CInstanceInfo > & |
rdrInstances |
|
) |
[private] |
|
Member Data Documentation
std::vector<CVBHeapBlock*> NL3D::CMeshBlockManager::_VBHeapBlocks [private]
|
|
TVBHeapMap NL3D::CMeshBlockManager::_VBHeapMap [private]
|
|
The documentation for this class was generated from the following files:
|
|