16 #include <kyruntime/core/service.h>
18 #include <kypathdata/containers/list.h>
19 #include <kypathdata/navmesh/navmeshutils.h>
20 #include <kypathdata/navmesh/navtriangleptr.h>
22 #include <kyruntime/mesh/navmeshobstaclelocation.h>
27 class NavMeshQueryServerWrapper;
36 class DtBhaveSpawnQuery;
107 KyBool
IsSpawnPointValid(
const Kaim::Vec3f& position, KyFloat32 interEntityMinDistance,
const Kaim::ObstacleTypeMask obstaclesToAvoid,
const char* databaseName=KY_NULL);
118 KyBool
CollectVolumeTriangles(Kaim::IVolume* controlVolume, Kaim::IVolume* spawnVolume, KyUInt32 soilTypeFilter);
125 KyBool
IntersectsAabbs(Kaim::IVolume* volume0, Kaim::IVolume* volume1);
128 void InsertTrianglePtr(Kaim::NavTrianglePtr navTrianglePtr, Kaim::List<Kaim::NavTrianglePtr>& trianglePtrList);
130 KyBool
GetAabbFromVolume(Kaim::IVolume* volume, Kaim::Vec3f& aabbMin, Kaim::Vec3f& aabbMax);
133 KyBool
IsInsideVolume(Kaim::IVolume* volume,
const Kaim::Vec3f& position);