Public Types | |
typedef configType | t_config |
typedef blub::sharedPointer < customOgreTile< t_config > > | pointer |
typedef OgreTile< t_config > | t_base |
![]() | |
typedef configType | t_config |
typedef blub::sharedPointer < OgreTile< t_config > > | pointer |
typedef blub::sharedPointer < const OgreTile< t_config > > | constPointer |
typedef blub::procedural::voxel::tile::renderer < t_config > | t_base |
typedef t_config::t_renderer::t_tile * | t_thiz |
typedef t_config::t_surface::t_tile | t_voxelSurfaceTile |
typedef t_base::t_tileData::t_vertices | t_vertices |
typedef t_config::t_vertex | t_vertex |
![]() | |
typedef configType | t_config |
typedef base< renderer < t_config > > | t_base |
typedef t_config::t_renderer::t_tile * | t_thiz |
typedef t_config::t_surface::t_tile | t_tileData |
typedef blub::sharedPointer < t_tileData > | t_tileDataPtr |
![]() | |
typedef sharedPointer < renderer< configType > > | pointer |
![]() | |
typedef std::enable_shared_from_this < renderer< configType > > | t_base |
typedef blub::sharedPointer < renderer< configType >const > | t_thisPtrConst |
typedef blub::sharedPointer < renderer< configType > > | t_thisPtr |
Public Member Functions | |
void | addCustomVertexDeclaration (Ogre::VertexDeclaration *decl) |
void | addCustomVertexInformation (Ogre::VertexBufferBinding *binding, const typename t_base::t_vertices &vertices) |
![]() | |
virtual | ~OgreTile () |
~OgreTile desctructor. Calls the static method destroyAllGraphic() to ensure Ogre instances get deleted by the right thread. The graphicDispatcher set by create() must stay valid until after ogre3d shutdown. | |
void | setTileData (typename t_base::t_tileDataPtr convertToRenderAble, const blub::axisAlignedBox &aabb) |
void | setVisible (const bool &vis) override |
setVisible sets if a tile should get rendered. All lod-submeshes must not be rendered either. More... | |
void | setVisibleLod (const blub::uint16 &indLod, const bool &vis) override |
![]() | |
~renderer () | |
~renderer destructor | |
void | setTileData (t_tileDataPtr convertToRenderAble, const axisAlignedBox &aabb) |
Implement this method and cast the data to your graphic engine. More... | |
virtual void | setVisibleLod (const uint16 &indLod, const bool &vis) |
setVisibleLod sets if one of the 6 crack closing submeshes (for lod) should get rendered. More... | |
const bool & | getVisible () const |
getVisible returns if a tile should get rendered. More... | |
const bool & | getVisibleLod (const uint16 &indLod) |
getVisibleLod returns if a crack-closing lod-tile should get rendered. More... | |
![]() | |
t_thisPtrConst | getSharedThisPtr () const |
t_thisPtr | getSharedThisPtr () |
Static Public Member Functions | |
static pointer | create (Ogre::SceneManager *sc, Ogre::String materialName, blub::async::dispatcher *graphicDispatcher) |
![]() | |
static pointer | create (Ogre::SceneManager *sc, Ogre::String materialName, blub::async::dispatcher *graphicDispatcher) |
create creates an instance and calls initialise(). More... | |
Protected Member Functions | |
customOgreTile (Ogre::SceneManager *sc, Ogre::String materialName, blub::async::dispatcher &graphicDispatcher) | |
![]() | |
OgreTile (Ogre::SceneManager *sc, Ogre::String materialName, blub::async::dispatcher &graphicDispatcher) | |
OgreTile constrcutor. More... | |
void | initialise () |
initialise calls createMeshGraphic() on graphic thread. Not called by constructor because getSharedThisPtr() isn't yet available. | |
void | createMeshGraphic () |
createMeshGraphic allocates and initialises an Ogre::Mesh where the vertices and indices will get saved to later. | |
void | setTileDataGraphic (blub::sharedPointer< t_voxelSurfaceTile > convertToRenderAble, const blub::axisAlignedBox &aabb) |
setTileDataGraphic convertes a vector of vertices and indices to ogres hardware buffer. More... | |
void | setVisibleGraphic (const bool &vis) |
setVisibleGraphic sets the whole tile to visible or invisible. Gets called when tile cutted because too near or too far away. More... | |
void | setVisibleLodGraphic (const blub::uint16 &indLod, const bool &vis) |
setVisibleLodGraphic sets a subentity-visibility. Gets called if the neighbour tile has a different LOD. To close the occuring cracks this method gets called. More... | |
void | addCustomVertexInformation (Ogre::VertexBufferBinding *binding, const t_vertices &vertices) |
void | addCustomVertexDeclaration (Ogre::VertexDeclaration *decl) |
constPointer | getSharedThisPtr () const |
pointer | getSharedThisPtr () |
![]() | |
renderer () | |
renderer constructor. | |
![]() | |
base () | |
base constrcutor. | |
Additional Inherited Members | |
![]() | |
static void | destroyAllGraphic (Ogre::SceneManager *scene, Ogre::MeshPtr mesh_, Ogre::Entity *entity_, Ogre::SceneNode *node_) |
destroyAllGraphic gets called by destructor - ensures that ogre3d classes get destroyed by the right thread. More... | |
![]() | |
bool | m_shouldBeVisible |
m_shouldBeVisible saves if tile should get rendered. | |
bool | m_lodShouldBeVisible [6] |
saves if crack closing submesh should get rendered. | |