Blob Blame Raw


#include "collider.h"


Real Collider::distance_to_model(const Vector3 &pos, const Vector3 &dir) const {
    Shape *shape = tool.create_collision_shape(pos, dir);
    Real distance = INFINITY;
    for(TriangleList::const_iterator i = model.triangles.begin(); i != model.triangles.end(); ++i)
        distance = std::min(distance, shape->distance_to_triangle(*i));
    return distance;
}