31 class PathFinderConfigBlob
37 KyUInt32 m_abstractGraphTraversalMode;
40 class PathFinderConfigBlobBuilder :
public BaseBlobBuilder<PathFinderConfigBlob>
45 PathFinderConfigBlobBuilder(const PathFinderConfig& config) : m_config(config) {}
47 virtual void DoBuild();
50 const PathFinderConfig& m_config;
55 SwapEndianness(e,
self.m_fromOutsideNavMeshDistance);
56 SwapEndianness(e,
self.m_toOutsideNavMeshDistance);
57 SwapEndianness(e,
self.m_propagationBoxExtent);
58 SwapEndianness(e,
self.m_abstractGraphTraversalMode);
71 KY_ROOT_BLOB_CLASS(Runtime, BotConfigBlob, 4)
80 PathFinderConfigBlob m_pathFinderConfig;
81 ChannelComputerConfig m_channelComputerConfig;
84 PathProgressConfig m_pathProgressConfig;
90 ShortcutTrajectoryConfigBlob m_shortcutTrajectoryConfig;
91 SplineTrajectoryConfigBlob m_splineTrajectoryConfig;
92 KyFloat32 m_trajectoryMinimalMoveDistance;
97 ColliderCollectorConfig m_colliderCollectorConfig;
98 AvoidanceConfigBlob m_avoidanceConfig;
103 inline
void SwapEndianness(Endianness::Target e, BotConfigBlob& self)
105 SwapEndianness(e,
self.m_visualDebugId);
106 SwapEndianness(e,
self.m_databaseIndex);
107 SwapEndianness(e,
self.m_radius);
108 SwapEndianness(e,
self.m_height);
109 SwapEndianness(e,
self.m_pathFinderConfig);
110 SwapEndianness(e,
self.m_channelComputerConfig);
111 SwapEndianness(e,
self.m_pathProgressConfig);
112 SwapEndianness(e,
self.m_trajectoryMode);
113 SwapEndianness(e,
self.m_shortcutTrajectoryConfig);
114 SwapEndianness(e,
self.m_splineTrajectoryConfig);
115 SwapEndianness(e,
self.m_trajectoryMinimalMoveDistance);
116 SwapEndianness(e,
self.m_trajectoryFailureMode);
117 SwapEndianness(e,
self.m_enableAvoidance);
118 SwapEndianness(e,
self.m_colliderCollectorConfig);
119 SwapEndianness(e,
self.m_avoidanceConfig);
120 SwapEndianness(e,
self.m_maxDesiredLinearSpeed);
123 class BotConfigBlobBuilder :
public BaseBlobBuilder<BotConfigBlob>
128 BotConfigBlobBuilder(const BotConfig& botConfig,
KyUInt32 visualDebugId,
KyUInt32 databaseIndex)
129 : m_botConfig(botConfig), m_visualDebugId(visualDebugId), m_databaseIndex(databaseIndex) {}
131 virtual void DoBuild();
134 const BotConfig& m_botConfig;
147 class FrontDirectionBlob
149 KY_ROOT_BLOB_CLASS(Runtime, FrontDirectionBlob, 0)
153 Vec2f m_frontDirection;
156 inline
void SwapEndianness(Endianness::Target e, FrontDirectionBlob& self)
158 SwapEndianness(e,
self.m_visualDebugId);
159 SwapEndianness(e,
self.m_frontDirection);
162 class FrontDirectionBlobBuilder :
public BaseBlobBuilder<FrontDirectionBlob>
167 FrontDirectionBlobBuilder(
KyUInt32 visualDebugId, const Vec2f* frontDirection)
168 : m_visualDebugId(visualDebugId)
169 , m_frontDirection(frontDirection)
172 virtual void DoBuild();
176 const Vec2f* m_frontDirection;
std::uint32_t KyUInt32
uint32_t
Definition: types.h:29
#define KY_CLASS_WITHOUT_COPY(ClassName)
Define to forbid copy constructor and copy assignment.
Definition: types.h:196
Target
Enumerates the possible endianness types relative to the current platform.
Definition: endianness.h:27
The Autodesk Navigation namespace.
Definition: gamekitcrowddispersion.cpp:17
float KyFloat32
float
Definition: types.h:32