namespace blank {
+class AABB;
class Ray;
struct Shape {
glm::vec3 &normal
) const noexcept = 0;
+ /// Check for intersection with given OBB.
+ /// The OBB is defined by box and box_M, M is applied to the shape.
+ virtual bool Intersects(
+ const glm::mat4 &M,
+ const AABB &box,
+ const glm::mat4 &box_M
+ ) const noexcept = 0;
+
protected:
void SetShape(const Model::Positions &pos, const Model::Normals &nrm, const Model::Indices &idx) {
vtx_pos = pos;