29 #ifndef __Ogre_TerrainLodManager_H__
30 #define __Ogre_TerrainLodManager_H__
64 , currentPreparedLod(preparedLod)
65 , currentLoadedLod(loadedLod)
66 , requestedLod(target)
96 void updateToLodLevel(
int lodLevel,
bool synchronous =
false);
106 void fillBufferAtLod(
uint lodLevel,
const float* data,
uint dataSize );
113 void readLodData(
uint16 lowerLodBound,
uint16 higherLodBound);
114 void waitForDerivedProcesses();
124 return mLodInfoTable[lodLevel];
128 void buildLodInfoTable();
147 static void separateData(
float* data,
uint16 size,
uint16 numLodLevels, LodsData& lods );
static const uint32 TERRAINLODDATA_CHUNK_ID
DataStreamPtr mDataStream
static const uint16 WORKQUEUE_LOAD_LOD_DATA_REQUEST
TerrainLodManager * requestee
_OgreTerrainExport friend std::ostream & operator<<(std::ostream &o, const LoadLodRequest &r)
LodInfo & getLodInfo(uint lodLevel)
Interface to a general purpose request / response style background work queue.
bool mLastRequestSynchronous
Is increaseLodLevel() running?
vector< LodData >::type LodsData
The main containing class for a chunk of terrain.
int mHighestLodPrepared
Which LOD level is demanded.
General purpose request structure.
General purpose response structure.
int mHighestLodLoaded
Highest LOD level stored in memory i.e. mHeightData/mDeltaData.
#define _OgreTerrainExport
Terrain LOD data manager.
vector< float >::type LodData
Utility class providing helper methods for reading / writing structured data held in a DataStream...
static const uint16 TERRAINLODDATA_CHUNK_VERSION
Interface definition for a handler of responses.
int getHighestLodLoaded()
bool mIncreaseLodLevelInProgress
Highest LOD level loaded in GPU.
int getHighestLodPrepared()
uint16 currentPreparedLod
LoadLodRequest(TerrainLodManager *r, uint16 preparedLod, uint16 loadedLod, uint16 target)
Interface definition for a handler of requests.
Superclass for all objects that wish to use custom memory allocators when their new / delete operator...