diff --git a/assets/sound/vo/aperture_ai/03_part1_entry-1.sox b/assets/sound/vo/aperture_ai/03_part1_entry-1.sox new file mode 100644 index 0000000..5ad82e6 --- /dev/null +++ b/assets/sound/vo/aperture_ai/03_part1_entry-1.sox @@ -0,0 +1 @@ +-c 1 -r 22050 diff --git a/assets/sound/vo/aperture_ai/03_part1_entry-2.sox b/assets/sound/vo/aperture_ai/03_part1_entry-2.sox new file mode 100644 index 0000000..5ad82e6 --- /dev/null +++ b/assets/sound/vo/aperture_ai/03_part1_entry-2.sox @@ -0,0 +1 @@ +-c 1 -r 22050 diff --git a/src/physics/collision_object.c b/src/physics/collision_object.c index 80d0f6e..cae8029 100644 --- a/src/physics/collision_object.c +++ b/src/physics/collision_object.c @@ -149,6 +149,11 @@ void collisionObjectCollideWithQuadSwept(struct CollisionObject* object, struct return; } + // quads with a thickness of 0 are one sided + if (quad->thickness == 0.0f && vector3Dot(&result.normal, &quad->plane.normal) < 0.0f) { + return; + } + int touchingPortals = collisionSceneIsTouchingPortal(&result.contactA, &result.normal); if (touchingPortals) {