- Block::Pos pos(float(x) + 0.5f, float(y) + 0.5f, float(z) + 0.5f);
- if (Type(blocks[id]).shape->Intersects(ray, glm::translate(M, pos), cur_dist, cur_norm)) {
- if (cur_dist < closest_dist) {
- closest_id = id;
- closest_dist = cur_dist;
- closest_normal = cur_norm;
+ if (Type(blocks[id]).shape->Intersects(ray, M * ToTransform(id), cur_dist, cur_norm)) {
+ if (cur_dist < dist) {
+ blkid = id;
+ dist = cur_dist;
+ normal = cur_norm;