Kaim::ClientInputConsumer Class Reference
#include <clientinputconsumer.h>
The ClientInputConsumer class is one of the primary components of the NavData generation system.
Its role is to accept data that describes your terrain from within Kaim::GeneratorInputProducer::Produce(const GeneratorSector& sector, ClientInputConsumer& consumer).
This data is then used as input for the NavData generation process. This data includes:
- The triangles that make up the terrain mesh, along with an optional color for each that defines its
- material: the type of terrain it represents.
- Optional 3D Tag volumes that tag all triangles within their volumes with a particular NavTag.
- Optional seed points that identify walkable areas.
|
KyResult | ConsumeTriangle (const Vec3f &A, const Vec3f &B, const Vec3f &C) |
|
KyResult | ConsumeTriangle (const Vec3f &client_A, const Vec3f &client_B, const Vec3f &client_C, const CoordSystem &clientCoordSystem) |
|
KyResult | ConsumeTriangle (const Vec3f &A, const Vec3f &B, const Vec3f &C, const DynamicNavTag &navTag) |
|
KyResult | ConsumeTriangle (const Vec3f &client_A, const Vec3f &client_B, const Vec3f &client_C, const DynamicNavTag &navTag, const CoordSystem &clientCoordSystem) |
|
KyResult | ConsumeTagVolume (const ClientInputTagVolume &inputTagVolume) |
|
KyResult | ConsumeSeedPoint (const Vec3f &position) |
|
KyResult | ConsumeSeedPointInClientCoordinates (const Vec3f &client_position, const CoordSystem &clientCoordSystem) |
|
KyResult | ConsumeHeightField (Ptr< HeightField > heightfield) |
|
KyResult | ConsumeHeightFieldFile (const String &heightfieldFileName) |
|
KyResult | ConsumeIndexedMesh (Ptr< IndexedMesh > indexedMesh) |
|
KyResult | ConsumeIndexedMeshFile (const String &indexedMeshFileName) |
|
ClientInputConsumerStatistics & | GetStats () |
|
VisualColor | GetNavTagColor (const DynamicNavTag &dynamicNavTag) const |
|
KyResult Kaim::ClientInputConsumer::ConsumeSeedPoint |
( |
const Vec3f & |
position | ) |
|
Provides a seed point that identifies a walkable area of the terrain.
If you provide a seed point, any areas of NavData that are not reachable from that seed point are automatically discarded during a post-processing phase. You can provide as many seed points as necessary for each sector.
All coordinates and altitudes must be expressed in Gameware Navigation coordinate system.
- Parameters
-
position | The position of the seed point |
KyResult Kaim::ClientInputConsumer::ConsumeSeedPointInClientCoordinates |
( |
const Vec3f & |
client_position, |
|
|
const CoordSystem & |
clientCoordSystem |
|
) |
| |
|
inline |
Identical to previous function but uses vertices in client coordinate system that must be specified in order to convert them in Navigation CoordSystem.
A, B and C are in Gameware Navigation coordinate system. m_defaultNavTag is used.
A, B and Care in client coordinate system. m_defaultNavTag is used.
KyResult Kaim::ClientInputConsumer::ConsumeTriangle |
( |
const Vec3f & |
A, |
|
|
const Vec3f & |
B, |
|
|
const Vec3f & |
C, |
|
|
const DynamicNavTag & |
navTag |
|
) |
| |
A, B and C are in Gameware Navigation coordinate system.
KyResult Kaim::ClientInputConsumer::ConsumeTriangle |
( |
const Vec3f & |
client_A, |
|
|
const Vec3f & |
client_B, |
|
|
const Vec3f & |
client_C, |
|
|
const DynamicNavTag & |
navTag, |
|
|
const CoordSystem & |
clientCoordSystem |
|
) |
| |
A, B and C are in client coordinate system.
void Kaim::ClientInputConsumer::Flush |
( |
| ) |
|
|
private |
ClientInputConsumerStatistics& Kaim::ClientInputConsumer::GetStats |
( |
| ) |
|
|
inline |
Retrieves information about the triangles consumed by this object.
bool Kaim::ClientInputConsumer::m_backFaceTrianglesWalkable |
|
private |
Internal member: Accessed using ToggleBackfaceTriangleFiltering.
KyArray<Vec3f> Kaim::ClientInputConsumer::m_childrenTriangles |
|
private |
Temporary buffer for triangles - in Gameware Navigation coordinates.
KyUInt32 Kaim::ClientInputConsumer::m_clientInputFlushCount |
|
private |
Internal member: Count how many times the ClientInput was flushed.
KyFloat32 Kaim::ClientInputConsumer::m_cosSlopeMax |
|
private |
Internal member: cosinus of maximum slope.
DynamicNavTag Kaim::ClientInputConsumer::m_defaultNavTag |
|
private |
shortcut for m_sys m_genParams.m_defaultNavTag;
DynamicClientInputChunk Kaim::ClientInputConsumer::m_dynamicClientInputChunk |
|
private |
Internal member: Original input chunk.
Ptr<HeightField>* Kaim::ClientInputConsumer::m_heightfield |
|
private |
Internal member: Consumed heightField in Gameware Navigation coordinates.
Internal member: Consumed IndexedMesh in Gameware Navigation coordinates.
Temporary buffer for triangles - in Gameware Navigation coordinates.
KyUInt32 Kaim::ClientInputConsumer::m_maxTriangleCountBeforeFlush |
|
private |
Internal member: For limited memory mode. 1024*1024 by default.
Internal member: The sector being processed.
Internal member: Consumed seedpoints in Gameware Navigation coordinates.
SpatializedSectorInput* Kaim::ClientInputConsumer::m_spatializedSectorInput |
|
private |
Internal member: Spatialized input in Gameware Navigation coordinates.
ClientInputConsumerStatistics Kaim::ClientInputConsumer::m_stats |
Maintains statistics about the data added to this object. Do not modify.
Fast access to the Generator-related information.
The documentation for this class was generated from the following file: