OGRE
1.9.0
|
Standard implementation of a buffer allocator which re-uses buffers. More...
#include <OgreTerrain.h>
Protected Types | |
typedef map< uint32, HardwareIndexBufferSharedPtr >::type | IBufMap |
typedef list< HardwareVertexBufferSharedPtr >::type | VBufList |
Protected Member Functions | |
HardwareVertexBufferSharedPtr | getVertexBuffer (VBufList &list, size_t vertexSize, size_t numVertices) |
uint32 | hashIndexBuffer (uint16 batchSize, uint16 vdatasize, size_t vertexIncrement, uint16 xoffset, uint16 yoffset, uint16 numSkirtRowsCols, uint16 skirtRowColSkip) |
Protected Attributes | |
VBufList | mFreeDeltaBufList |
VBufList | mFreePosBufList |
IBufMap | mSharedIBufMap |
Standard implementation of a buffer allocator which re-uses buffers.
Definition at line 572 of file OgreTerrain.h.
|
protected |
Definition at line 594 of file OgreTerrain.h.
|
protected |
Definition at line 591 of file OgreTerrain.h.
Ogre::Terrain::DefaultGpuBufferAllocator::DefaultGpuBufferAllocator | ( | ) |
|
virtual |
|
virtual |
Allocate (or reuse) vertex buffers for a terrain LOD.
numVertices | The total number of vertices |
destPos | Pointer to a vertex buffer for positions, to be bound |
destDelta | Pointer to a vertex buffer for deltas, to be bound |
Implements Ogre::Terrain::GpuBufferAllocator.
|
virtual |
Free any buffers we're holding.
Implements Ogre::Terrain::GpuBufferAllocator.
|
virtual |
Free (or return to the pool) vertex buffers for terrain.
Implements Ogre::Terrain::GpuBufferAllocator.
|
virtual |
Get a shared index buffer for a given number of settings.
batchSize | The batch size along one edge |
vdatasize | The size of the referenced vertex data along one edge |
vertexIncrement | The number of vertices to increment for each new indexed row / column |
xoffset | The x offset from the start of vdatasize, at that resolution |
yoffset | The y offset from the start of vdatasize, at that resolution |
numSkirtRowsCols | Number of rows and columns of skirts |
skirtRowColSkip | The number of rows / cols to skip in between skirts |
Implements Ogre::Terrain::GpuBufferAllocator.
|
protected |
|
protected |
Definition at line 96 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 108 of file OgreMemoryAllocatedObject.h.
Definition at line 102 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 113 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 119 of file OgreMemoryAllocatedObject.h.
Definition at line 73 of file OgreMemoryAllocatedObject.h.
|
inherited |
operator new, with debug line info
Definition at line 68 of file OgreMemoryAllocatedObject.h.
placement operator new
Definition at line 79 of file OgreMemoryAllocatedObject.h.
Definition at line 91 of file OgreMemoryAllocatedObject.h.
|
inherited |
array operator new, with debug line info
Definition at line 86 of file OgreMemoryAllocatedObject.h.
void Ogre::Terrain::DefaultGpuBufferAllocator::warmStart | ( | size_t | numInstances, |
uint16 | terrainSize, | ||
uint16 | maxBatchSize, | ||
uint16 | minBatchSize | ||
) |
'Warm start' the allocator based on needing x instances of terrain with the given configuration.
|
protected |
Definition at line 593 of file OgreTerrain.h.
|
protected |
Definition at line 592 of file OgreTerrain.h.
|
protected |
Definition at line 595 of file OgreTerrain.h.