gwnavgeneration/navmesh/dynamicnavfloorheightfield.h Source File
Go to the documentation of this file.
17 class GeneratorSystem;
18 class DynamicRasterCell;
20 enum NavFloorHeightFieldErrorUpdateStatus
22 NavFloorHeightFieldErrorStatus_Updated,
23 NavFloorHeightFieldErrorStatus_NoProjections
26 enum NavFloorHeightFieldPointStatus
28 NavFloorHeightFieldPointStatus_Valid,
29 NavFloorHeightFieldPointStatus_Disabled
32 typedef Vec2i HeighfieldQuadPos;
33 typedef Box2i HeighfieldQuadBox;
35 class NavFloorHeightFieldPoint
39 NavFloorHeightFieldPoint()
42 m_maxLocalAlt(-KyFloat32MAXVAL),
44 m_status(NavFloorHeightFieldPointStatus_Valid) {}
46 NavFloorHeightFieldPoint(
const Vec2f& pos,
KyFloat32 alt)
51 m_status(NavFloorHeightFieldPointStatus_Valid) {}
58 NavFloorHeightFieldPointStatus m_status;
71 class NavFloorHeightField
75 NavFloorHeightField(GeneratorSystem* sys, const PixelBox& navPixelBox);
77 void AddPoint(const PixelPos& pixelPos,
KyFloat32 alt);
78 NavFloorHeightFieldErrorUpdateStatus UpdateErrors(const DynamicRasterCell* rasterCell);
79 NavFloorHeightFieldPoint* GetWorstErrorPoint();
80 NavFloorHeightFieldPoint* GetPointAtLocalHeightFieldPos(const HeighfieldQuadPos& heighfieldPixelPos);
81 NavFloorHeightFieldPoint* GetPointAtAbsoluteHeightFieldPos(const HeighfieldQuadPos& heighfieldPixelPos);
82 KyFloat32 ComputeQuadSizeInMeters() const;
85 GeneratorSystem* m_sys;
86 PixelBox m_navPixelBox;
90 HeighfieldQuadBox m_heightFieldQuadBox;
91 HeighfieldQuadBox m_heightFieldBoundingQuadBox;
92 KyArrayTLS<NavFloorHeightFieldPoint> m_points;
#define KyFloat32MAXVAL
KyFloat32 max value
Definition: types.h:71
std::uint32_t KyUInt32
uint32_t
Definition: types.h:29
#define KY_DEFINE_NEW_DELETE_OPERATORS(MemStat)
This macro defines new and delete operators.
Definition: memory.h:132
The Autodesk Navigation namespace.
Definition: gamekitcrowddispersion.cpp:17
std::int32_t KyInt32
int32_t
Definition: types.h:24
float KyFloat32
float
Definition: types.h:32