![]() |
ezEngine
Release 25.03
|
A world module that retrieves triangle data that should be used for building navmeshes at runtime. More...
#include <NavmeshGeoWorldModule.h>
Public Member Functions | |
virtual void | RetrieveGeometryInArea (ezUInt32 uiCollisionLayer, const ezBoundingBox &box, ezDynamicArray< ezNavmeshTriangle > &out_triangles) const =0 |
![]() | |
ezWorld * | GetWorld () |
Returns the corresponding world to this module. | |
const ezWorld * | GetWorld () const |
Returns the corresponding world to this module. | |
ezUInt32 | GetWorldIndex () const |
Same as GetWorld()->GetIndex(). Needed to break circular include dependencies. | |
![]() | |
virtual const ezRTTI * | GetDynamicRTTI () const |
bool | IsInstanceOf (const ezRTTI *pType) const |
Returns whether the type of this instance is of the given type or derived from it. | |
template<typename T > | |
EZ_ALWAYS_INLINE bool | IsInstanceOf () const |
Returns whether the type of this instance is of the given type or derived from it. | |
Protected Member Functions | |
ezNavmeshGeoWorldModuleInterface (ezWorld *pWorld) | |
![]() | |
ezWorldModule (ezWorld *pWorld) | |
void | RegisterUpdateFunction (const UpdateFunctionDesc &desc) |
Registers the given update function at the world. | |
void | DeregisterUpdateFunction (const UpdateFunctionDesc &desc) |
De-registers the given update function from the world. Note that only the m_Function and the m_Phase of the description have to be valid for de-registration. | |
ezAllocator * | GetAllocator () |
Returns the allocator used by the world. | |
ezInternal::WorldLargeBlockAllocator * | GetBlockAllocator () |
Returns the block allocator used by the world. | |
bool | GetWorldSimulationEnabled () const |
Returns whether the world simulation is enabled. | |
virtual void | Initialize () |
This method is called after the constructor. A derived type can override this method to do initialization work. Typically this is the method where updates function are registered. | |
virtual void | Deinitialize () |
This method is called before the destructor. A derived type can override this method to do deinitialization work. | |
virtual void | OnSimulationStarted () |
This method is called at the start of the next world update when the world is simulated. This method will be called after the initialization method. | |
virtual void | WorldClear () |
Called by ezWorld::Clear(). Can be used to clear cached data when a world is completely cleared of objects (but not deleted). | |
Additional Inherited Members | |
![]() | |
static const ezRTTI * | GetStaticRTTI () |
![]() | |
using | UpdateFunction = ezDelegate< void(const UpdateContext &)> |
Update function delegate. | |
![]() | |
ezWorld * | m_pWorld |
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 ezWorldModuleFactory::RegisterInterfaceImplementation() to specify which module to use. Also see ezWorldModuleConfig.