9 #ifndef GwNavGen_ClientInputConsumer_H
10 #define GwNavGen_ClientInputConsumer_H
24 class GeneratorSystem;
25 class SpatializedSectorInput;
26 class SectorInputData;
27 class GeneratorSector;
28 class GeneratorInputProducer;
32 class ClientInputConsumerStatistics
36 ClientInputConsumerStatistics() { Clear(); }
40 m_nbConsumedTriangles = 0;
41 m_consumedSurface2d = 0;
42 m_nbConsumedVolumes = 0;
45 KyUInt32 GetNbConsumedTriangles() {
return m_nbConsumedTriangles; }
46 KyFloat32 GetConsumedSurface2d() {
return m_consumedSurface2d; }
47 KyFloat32 GetAverageConsumedTriangleSurface2d() {
return m_consumedSurface2d / (
KyFloat32)m_nbConsumedTriangles; }
48 void GetConsumedTrianglesBoundingBox(Box3f& box) { box = m_consumedTrianglesBoundingBox; }
53 Box3f m_consumedTrianglesBoundingBox;
64 class ClientInputConsumer
95 const
Vec3f& client_A, const
Vec3f& client_B, const
Vec3f& client_C, const DynamicNavTag& navTag, const
CoordSystem& clientCoordSystem);
111 KyResult ConsumeHeightField(Ptr<HeightField> heightfield);
112 KyResult ConsumeHeightFieldFile(
const String& heightfieldFileName);
114 KyResult ConsumeIndexedMesh(Ptr<IndexedMesh> indexedMesh);
115 KyResult ConsumeIndexedMeshFile(
const String& indexedMeshFileName);
119 VisualColor GetNavTagColor(
const DynamicNavTag& dynamicNavTag)
const;
121 KY_DEPRECATED(
VisualColor GetNavTagVisualColor(
const DynamicNavTag& dynamicNavTag)
const) {
return GetNavTagColor(dynamicNavTag); }
126 KyResult SaveClientInput(
const String& fullFileName);
128 void TestWarningOnLowMemoryModeNbTriangles();
129 bool IsTriangleSlopeWalkable(
const Vec3f& A,
const Vec3f& B,
const Vec3f& C);
132 ClientInputConsumerStatistics
m_stats;
156 IndexedMeshBlobBuilder* m_inputMeshBuilder;
Class used to provide TagVolume initialization parameters.
Definition: tagvolume.h:36
KyInt32 KyResult
Defines a type that can be returned by methods or functions in the Gameware Navigation SDK to indicat...
Definition: types.h:254
Maintains generation data for each sector.
Definition: generatorsectorbuilder.h:41
GeneratorSystem gathers everything that is global across a generation: configuration, options...
Definition: generatorsystem.h:46
The IndexedMesh class represents a 3D Triangle Mesh with Indexing.
Definition: indexedmesh.h:24
This class maintains the mapping between the system of coordinate axes used internally within the gam...
Definition: coordsystem.h:144
General purpose array for movable objects that require explicit construction/destruction.
Definition: kyarray.h:118
int KyInt32
Type used internally to represent a 32-bit integer.
Definition: types.h:35
Represents a single RGBA color.
Definition: visualcolor.h:19
Heightfield with a uniform grid of sampled altitudes.
Definition: heightfield.h:51
The GeneratorSector class provides a definition for a single sector to be treated by the Generator...
Definition: generatorsector.h:46
Definition: gamekitcrowddispersion.h:20
#define KY_DEFINE_NEW_DELETE_OPERATORS(MemStat)
This macro defines new and delete operators.
Definition: memory.h:137
#define KY_DEPRECATED(f)
Macro to mark a function, class or method as deprecated.
Definition: types.h:289
unsigned int KyUInt32
Type used internally to represent an unsigned 32-bit integer.
Definition: types.h:36
float KyFloat32
Type used internally to represent a 32-bit floating-point number.
Definition: types.h:43
This class defines a three-dimensional vector whose coordinates are stored using floating-point numbe...
Definition: vec3f.h:23