Loading phx/include/phx/coll/collision_system.hpp +2 −2 Original line number Diff line number Diff line Loading @@ -56,11 +56,11 @@ struct CollisionSystem final : com::System PotentialCollisions broadphase_collisions(com::Folder *world) const; bool raycast(com::Folder *world, geometry::Ray const &ray, RayCastResult &result, RayCastAlgorithm algorithm = RayCastAlgorithm::VCLIP, NarrowDetector::Algorithm algorithm = NarrowDetector::Algorithm::VCLIP, std::unordered_set<std::size_t> layers = {}); bool raycast(const geometry::Ray &ray, ConvexHullCollider *collider, RayCastResult &result, RayCastAlgorithm algorithm = RayCastAlgorithm::VCLIP) const; NarrowDetector::Algorithm algorithm =NarrowDetector::Algorithm::VCLIP) const; bool distance_query(com::Folder *world, Collider *collider_a, Collider *collider_b, geometry::ClosestPoints &result); Loading phx/include/phx/coll/raycast.hpp +0 −9 Original line number Diff line number Diff line Loading @@ -12,15 +12,6 @@ namespace phx::coll struct Collider; struct ConvexHullCollider; enum class RayCastAlgorithm { GJK = 0, VCLIP = 1, BRUTE = 2 }; static const std::string RayCastAlgorithmNames[] = {"GJK", "VClip", "Brute"}; struct RayCastResult { struct Hit Loading phx/src/coll/collision_system.cpp +3 −2 Original line number Diff line number Diff line #include "phx/coll/narrow/narrow_detector.hpp" #include <phx/coll/collision_system.hpp> #include <ranges> Loading Loading @@ -293,7 +294,7 @@ bool CollisionSystem::distance_query(Collider *collider_a, Collider *collider_b, } bool CollisionSystem::raycast(com::Folder *world, geometry::Ray const &ray, RayCastResult &result, RayCastAlgorithm algorithm, NarrowDetector::Algorithm algorithm, std::unordered_set<std::size_t> layers) { if (m_worlds.contains(world) == false) Loading Loading @@ -357,7 +358,7 @@ bool CollisionSystem::raycast(com::Folder *world, geometry::Ray const &ray, RayC } bool CollisionSystem::raycast(const geometry::Ray &ray, ConvexHullCollider *collider, RayCastResult &result, RayCastAlgorithm algorithm) const RayCastResult &result, NarrowDetector::Algorithm algorithm) const { return m_narrow_detectors[static_cast<int>(algorithm)]->raycast(ray, collider, result); } Loading Loading
phx/include/phx/coll/collision_system.hpp +2 −2 Original line number Diff line number Diff line Loading @@ -56,11 +56,11 @@ struct CollisionSystem final : com::System PotentialCollisions broadphase_collisions(com::Folder *world) const; bool raycast(com::Folder *world, geometry::Ray const &ray, RayCastResult &result, RayCastAlgorithm algorithm = RayCastAlgorithm::VCLIP, NarrowDetector::Algorithm algorithm = NarrowDetector::Algorithm::VCLIP, std::unordered_set<std::size_t> layers = {}); bool raycast(const geometry::Ray &ray, ConvexHullCollider *collider, RayCastResult &result, RayCastAlgorithm algorithm = RayCastAlgorithm::VCLIP) const; NarrowDetector::Algorithm algorithm =NarrowDetector::Algorithm::VCLIP) const; bool distance_query(com::Folder *world, Collider *collider_a, Collider *collider_b, geometry::ClosestPoints &result); Loading
phx/include/phx/coll/raycast.hpp +0 −9 Original line number Diff line number Diff line Loading @@ -12,15 +12,6 @@ namespace phx::coll struct Collider; struct ConvexHullCollider; enum class RayCastAlgorithm { GJK = 0, VCLIP = 1, BRUTE = 2 }; static const std::string RayCastAlgorithmNames[] = {"GJK", "VClip", "Brute"}; struct RayCastResult { struct Hit Loading
phx/src/coll/collision_system.cpp +3 −2 Original line number Diff line number Diff line #include "phx/coll/narrow/narrow_detector.hpp" #include <phx/coll/collision_system.hpp> #include <ranges> Loading Loading @@ -293,7 +294,7 @@ bool CollisionSystem::distance_query(Collider *collider_a, Collider *collider_b, } bool CollisionSystem::raycast(com::Folder *world, geometry::Ray const &ray, RayCastResult &result, RayCastAlgorithm algorithm, NarrowDetector::Algorithm algorithm, std::unordered_set<std::size_t> layers) { if (m_worlds.contains(world) == false) Loading Loading @@ -357,7 +358,7 @@ bool CollisionSystem::raycast(com::Folder *world, geometry::Ray const &ray, RayC } bool CollisionSystem::raycast(const geometry::Ray &ray, ConvexHullCollider *collider, RayCastResult &result, RayCastAlgorithm algorithm) const RayCastResult &result, NarrowDetector::Algorithm algorithm) const { return m_narrow_detectors[static_cast<int>(algorithm)]->raycast(ray, collider, result); } Loading