ray casting floating point work
Some checks failed
studiorailgun/Renderer/pipeline/head There was a failure building this commit

This commit is contained in:
austin 2025-01-24 16:28:57 -05:00
parent 70bc473277
commit 8ecfcdfc9d

View File

@ -654,7 +654,7 @@ public class CollisionEngine {
Vector3d unitDir = new Vector3d(direction).normalize();
//create the ray
DRay ray = OdeHelper.createRay(space, length);
ray.set(start.x, start.y, start.z, unitDir.x, unitDir.y, unitDir.z);
ray.set(start.x - this.floatingOrigin.x, start.y - this.floatingOrigin.y, start.z - this.floatingOrigin.z, unitDir.x, unitDir.y, unitDir.z);
//collide
RayCastCallbackData data = new RayCastCallbackData(bodyPointerMap, typeMask);
rayCastCallback.setLength(length);
@ -678,7 +678,7 @@ public class CollisionEngine {
Vector3d unitDir = new Vector3d(direction).normalize();
//create the ray
DRay ray = OdeHelper.createRay(space, length);
ray.set(start.x, start.y, start.z, unitDir.x, unitDir.y, unitDir.z);
ray.set(start.x - this.floatingOrigin.x, start.y - this.floatingOrigin.y, start.z - this.floatingOrigin.z, unitDir.x, unitDir.y, unitDir.z);
//collide
RayCastCallbackData data = new RayCastCallbackData(bodyPointerMap, null);
rayCastCallback.setLength(length);
@ -702,7 +702,7 @@ public class CollisionEngine {
Vector3d unitDir = new Vector3d(direction).normalize();
//create the ray
DRay ray = OdeHelper.createRay(space, length);
ray.set(start.x, start.y, start.z, unitDir.x, unitDir.y, unitDir.z);
ray.set(start.x - this.floatingOrigin.x, start.y - this.floatingOrigin.y, start.z - this.floatingOrigin.z, unitDir.x, unitDir.y, unitDir.z);
//collide
RayCastCallbackData data = new RayCastCallbackData(bodyPointerMap, typeMask);
rayCastCallback.setLength(length);