XII Release 0.1.0
Loading...
Searching...
No Matches
xiiNavmeshGeoWorldModuleInterface Class Referenceabstract

#include <NavmeshGeoWorldModule.h>

Inheritance diagram for xiiNavmeshGeoWorldModuleInterface:
[legend]

Public Member Functions

virtual void RetrieveGeometryInArea (xiiUInt32 uiCollisionLayer, const xiiBoundingBox &box, xiiDynamicArray< xiiNavmeshTriangle > &out_triangles) const =0
Public Member Functions inherited from xiiWorldModule
xiiWorld * GetWorld ()
 Returns the corresponding world to this module.
const xiiWorld * GetWorld () const
 Returns the corresponding world to this module.
xiiUInt32 GetWorldIndex () const
 Same as GetWorld()->GetIndex(). Needed to break circular include dependencies.
Public Member Functions inherited from xiiReflectedClass
virtual const xiiRTTI * GetDynamicRTTI () const
bool IsInstanceOf (const xiiRTTI *pType) const
 Returns whether the type of this instance is of the given type or derived from it.
template<typename T>
XII_ALWAYS_INLINE bool IsInstanceOf () const
 Returns whether the type of this instance is of the given type or derived from it.

Protected Member Functions

 xiiNavmeshGeoWorldModuleInterface (xiiWorld *pWorld)
Protected Member Functions inherited from xiiWorldModule
 xiiWorldModule (xiiWorld *pWorld)
void RegisterUpdateFunction (const UpdateFunctionDesc &desc)
 Registers the given update function at the world.
void DeregisterUpdateFunction (const UpdateFunctionDesc &desc)
xiiAllocator * GetAllocator ()
 Returns the allocator used by the world.
xiiInternal::WorldLargeBlockAllocator * GetBlockAllocator ()
 Returns the block allocator used by the world.
bool GetWorldSimulationEnabled () const
 Returns whether the world simulation is enabled.
virtual void Initialize ()
virtual void Deinitialize ()
 This method is called before the destructor. A derived type can override this method to do deinitialization work.
virtual void OnSimulationStarted ()
virtual void WorldClear ()
 Called by xiiWorld::Clear(). Can be used to clear cached data when a world is completely cleared of objects (but not deleted).

Additional Inherited Members

Static Public Member Functions inherited from xiiNoBase
static const xiiRTTI * GetStaticRTTI ()
Protected Types inherited from xiiWorldModule
using UpdateFunction = xiiDelegate<void(const UpdateContext&)>
 Update function delegate.
Protected Attributes inherited from xiiWorldModule
xiiWorld *const m_pWorld

Detailed Description

A world module that retrieves triangle data that should be used for building navmeshes at runtime.

If a physics engine is active, it usually automatically provides such a world module to retrieve the triangle data through physics queries.

In other types of games, a custom world module can be implemented, to generate this data in a different way. If a physics engine is active, but a custom method should be used, you can write a custom world module and then use xiiWorldModuleFactory::RegisterInterfaceImplementation() to specify which module to use. Also see xiiWorldModuleConfig.


The documentation for this class was generated from the following file: