Minor bugfixes in CollisionSystem
The global origin wasn't taken into account, and the output had an issue.
This commit is contained in:
parent
3bb071ae7b
commit
7cc6531928
@ -42,9 +42,9 @@ class CollisionSystem : public EntitySystem {
|
|||||||
|
|
||||||
// Transform to World Position -- these are local coordinates with
|
// Transform to World Position -- these are local coordinates with
|
||||||
// individual mesh origins
|
// individual mesh origins
|
||||||
v1glm = transform->matrix * v1glm;
|
v1glm = transform->matrix * v1glm + glm::vec4(transform->get_origin(), 0.0);
|
||||||
v2glm = transform->matrix * v2glm;
|
v2glm = transform->matrix * v2glm + glm::vec4(transform->get_origin(), 0.0);
|
||||||
v3glm = transform->matrix * v3glm;
|
v3glm = transform->matrix * v3glm + glm::vec4(transform->get_origin(), 0.0);
|
||||||
|
|
||||||
Vector v1(v1glm.x, v1glm.y, v1glm.z);
|
Vector v1(v1glm.x, v1glm.y, v1glm.z);
|
||||||
Vector v2(v2glm.x, v2glm.y, v2glm.z);
|
Vector v2(v2glm.x, v2glm.y, v2glm.z);
|
||||||
@ -79,12 +79,12 @@ class CollisionSystem : public EntitySystem {
|
|||||||
Vector origin = Vector(origin_glm.x, origin_glm.y, origin_glm.z);
|
Vector origin = Vector(origin_glm.x, origin_glm.y, origin_glm.z);
|
||||||
|
|
||||||
// TODO: Get mouse look direction
|
// TODO: Get mouse look direction
|
||||||
Ray ray(origin, Vector(0, 0, -1));
|
Ray ray(origin, Vector(0, 0, -3));
|
||||||
|
|
||||||
Triangle *result = kdtree->intersect_ray(ray);
|
Triangle *result = kdtree->intersect_ray(ray);
|
||||||
|
|
||||||
if (result) {
|
if (result) {
|
||||||
std::cout << result->p1[0] << ", " << result->p1[2] << ", " << result->p1[3]
|
std::cout << result->p1[0] << ", " << result->p1[1] << ", " << result->p1[2]
|
||||||
<< std::endl;
|
<< std::endl;
|
||||||
}
|
}
|
||||||
// TODO: Also output visually
|
// TODO: Also output visually
|
||||||
|
Loading…
x
Reference in New Issue
Block a user