6 #include "IMultipleResultRayCaster.h"
7 #include "InteriorInteractionModel.h"
9 #include "EnvironmentFlatteningService.h"
10 #include "CollisionBvh.h"
11 #include "IInteriorsEntityPicker.h"
13 #include "DebugRendering.h"
45 typedef std::pair<Collision::RayCasterResult, std::string> RayCasterResultWithId;
47 std::vector<RayCasterResultWithId> FindRayIntersectionsWithHighlights(
const dv3& rayOriginEcef,
const dv3& rayDirectionEcef)
const;
48 std::vector<RayCasterResultWithId> FindRayIntersectionsWithInstancedEntities(
const dv3& rayOriginEcef,
const dv3& rayDirectionEcef)
const;
52 const dv3& rayOriginEcef,
53 const dv3& rayDirectionEcef,
54 const m44& environmentFlattenTransform
59 const m44& entityModelTransform,
60 const m44& entityInverseModelTransform,
61 const dv3& rayOriginEcef,
62 const dv3& rayDirectionEcef)
const;
67 InteriorsEntityPickResult MakeInteriorsEntityPickResult(
const std::vector<RayCasterResultWithId>& rayCasterResults)
const;
69 void DebugDrawInstancedEntityPicking(
71 const m44& entityModelTransform,
72 const m44& entityInverseModelTransform,
73 const dv3& rayOriginEcef,
74 const dv3& rayDirectionEcef,
83 bool m_debugDrawEnabled;