From e842c2b7720161e62d77b3eb499a3b8de245b306 Mon Sep 17 00:00:00 2001 From: bjorn Date: Thu, 4 Apr 2024 16:23:20 -0700 Subject: [PATCH] Require frozen CompoundShapes to have at least 2 children; If you create a StaticCompoundShape with 1 child, Jolt creates a RotatedTranslatedShape. It would be a pain to have to branch on that, so let's just require 2 children. --- src/modules/physics/physics_jolt.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/modules/physics/physics_jolt.c b/src/modules/physics/physics_jolt.c index dc451a85..385acc76 100644 --- a/src/modules/physics/physics_jolt.c +++ b/src/modules/physics/physics_jolt.c @@ -923,7 +923,7 @@ TerrainShape* lovrTerrainShapeCreate(float* vertices, uint32_t n, float scaleXZ, } CompoundShape* lovrCompoundShapeCreate(Shape** shapes, vec3 positions, quat orientations, uint32_t count, bool freeze) { - lovrCheck(!freeze || count > 0, "A frozen CompoundShape must contain at least one shape"); + lovrCheck(!freeze || count >= 2, "A frozen CompoundShape must contain at least two shapes"); CompoundShape* parent = lovrCalloc(sizeof(CompoundShape)); parent->ref = 1;