diff options
author | Marcel Admiraal <madmiraal@users.noreply.github.com> | 2020-06-27 18:34:16 +0100 |
---|---|---|
committer | Marcel Admiraal <madmiraal@users.noreply.github.com> | 2020-06-27 18:34:16 +0100 |
commit | 79d3d3d17b3b5ade28f77562eb25c55a2f07229a (patch) | |
tree | 4ef1d3e34f2650a0fe9ce9f46f0b783fa5631377 /servers/physics_3d | |
parent | ff0583770a8152cd63265e26e2529a170c179f68 (diff) |
Trigger broadphase update when changing collision layer/mask, and
check for collision layer/mask changes in 2D hash grid broadphase update.
Diffstat (limited to 'servers/physics_3d')
-rw-r--r-- | servers/physics_3d/collision_object_3d_sw.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/servers/physics_3d/collision_object_3d_sw.h b/servers/physics_3d/collision_object_3d_sw.h index 9506f14402..a3a5787ced 100644 --- a/servers/physics_3d/collision_object_3d_sw.h +++ b/servers/physics_3d/collision_object_3d_sw.h @@ -142,10 +142,16 @@ public: return shapes[p_idx].disabled; } - _FORCE_INLINE_ void set_collision_layer(uint32_t p_layer) { collision_layer = p_layer; } + _FORCE_INLINE_ void set_collision_layer(uint32_t p_layer) { + collision_layer = p_layer; + _shape_changed(); + } _FORCE_INLINE_ uint32_t get_collision_layer() const { return collision_layer; } - _FORCE_INLINE_ void set_collision_mask(uint32_t p_mask) { collision_mask = p_mask; } + _FORCE_INLINE_ void set_collision_mask(uint32_t p_mask) { + collision_mask = p_mask; + _shape_changed(); + } _FORCE_INLINE_ uint32_t get_collision_mask() const { return collision_mask; } _FORCE_INLINE_ bool test_collision_mask(CollisionObject3DSW *p_other) const { |