OpenMW
|
Simple terrain implementation that loads cells in a grid, with no LOD. Only requested cells are loaded. More...
#include <terraingrid.hpp>
Public Member Functions | |
TerrainGrid (osg::Group *parent, osg::Group *compileRoot, Resource::ResourceSystem *resourceSystem, Storage *storage, int nodeMask, int preCompileMask=~0, int borderMask=0) | |
~TerrainGrid () | |
virtual void | cacheCell (View *view, int x, int y) |
virtual void | loadCell (int x, int y) |
virtual void | unloadCell (int x, int y) |
View * | createView () |
![]() | |
World (osg::Group *parent, osg::Group *compileRoot, Resource::ResourceSystem *resourceSystem, Storage *storage, int nodeMask, int preCompileMask, int borderMask) | |
virtual | ~World () |
void | setTargetFrameRate (float rate) |
See CompositeMapRenderer::setTargetFrameRate. More... | |
void | updateTextureFiltering () |
float | getHeightAt (const osg::Vec3f &worldPos) |
virtual void | clearAssociatedCaches () |
virtual void | enable (bool enabled) |
virtual void | setBordersVisible (bool visible) |
virtual void | preload (View *view, const osg::Vec3f &eyePoint) |
virtual void | reportStats (unsigned int frameNumber, osg::Stats *stats) |
virtual void | setDefaultViewer (osg::Object *obj) |
Set the default viewer (usually a Camera), used as viewpoint for any viewers that don't use their own viewpoint. More... | |
Storage * | getStorage () |
Private Member Functions | |
osg::ref_ptr< osg::Node > | buildTerrain (osg::Group *parent, float chunkSize, const osg::Vec2f &chunkCenter) |
Private Attributes | |
unsigned int | mNumSplits |
MWRender::CellBorder::CellGrid | mGrid |
Additional Inherited Members | |
![]() | |
Storage * | mStorage |
osg::ref_ptr< osg::Group > | mParent |
osg::ref_ptr< osg::Group > | mTerrainRoot |
osg::ref_ptr< osg::Group > | mCompositeMapCamera |
osg::ref_ptr < CompositeMapRenderer > | mCompositeMapRenderer |
Resource::ResourceSystem * | mResourceSystem |
std::unique_ptr< TextureManager > | mTextureManager |
std::unique_ptr< ChunkManager > | mChunkManager |
std::unique_ptr < MWRender::CellBorder > | mCellBorder |
bool | mBorderVisible |
std::set< std::pair< int, int > > | mLoadedCells |
Simple terrain implementation that loads cells in a grid, with no LOD. Only requested cells are loaded.
Terrain::TerrainGrid::TerrainGrid | ( | osg::Group * | parent, |
osg::Group * | compileRoot, | ||
Resource::ResourceSystem * | resourceSystem, | ||
Storage * | storage, | ||
int | nodeMask, | ||
int | preCompileMask = ~0 , |
||
int | borderMask = 0 |
||
) |
Terrain::TerrainGrid::~TerrainGrid | ( | ) |
|
private |
Load a terrain cell at maximum LOD and store it in the View for later use.
Reimplemented from Terrain::World.
|
virtual |
Create a View to use with preload feature. The caller is responsible for deleting the view.
Reimplemented from Terrain::World.
Reimplemented from Terrain::World.
|
private |
|
private |