mirror of https://github.com/godotengine/godot
Fix crash on debug shapes update if CollisionObject is not in tree
Also fix ConcavePolygonShape not emitting the changed signal
(cherry picked from commit 7043d6d1c6)
This commit is contained in:
parent
20dfa4ceaa
commit
5b8b3f645e
|
|
@ -160,6 +160,11 @@ void CollisionObject::_shape_changed(const Ref<Shape> &p_shape) {
|
|||
}
|
||||
|
||||
void CollisionObject::_update_debug_shapes() {
|
||||
if (!is_inside_tree()) {
|
||||
debug_shapes_to_update.clear();
|
||||
return;
|
||||
}
|
||||
|
||||
for (Set<uint32_t>::Element *shapedata_idx = debug_shapes_to_update.front(); shapedata_idx; shapedata_idx = shapedata_idx->next()) {
|
||||
if (shapes.has(shapedata_idx->get())) {
|
||||
ShapeData &shapedata = shapes[shapedata_idx->get()];
|
||||
|
|
|
|||
|
|
@ -71,6 +71,7 @@ void ConcavePolygonShape::_update_shape() {
|
|||
void ConcavePolygonShape::set_faces(const PoolVector<Vector3> &p_faces) {
|
||||
|
||||
PhysicsServer::get_singleton()->shape_set_data(get_shape(), p_faces);
|
||||
_update_shape();
|
||||
notify_change_to_owners();
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue