diff options
author | Juan Linietsky <reduzio@gmail.com> | 2017-11-09 23:34:01 -0300 |
---|---|---|
committer | Juan Linietsky <reduzio@gmail.com> | 2017-11-09 23:35:34 -0300 |
commit | 192a4d7de5c557bdfe83bd180cd603d7e280ebd4 (patch) | |
tree | 94ce9779b3f84fbc320ba83624e326d487ca1c04 /scene/2d/tile_map.cpp | |
parent | 0de6cba7e7e114f71fabb3dbe02cf260f7d3e2c6 (diff) |
Reworked how servers preallocate RIDs, should fix #10970
Diffstat (limited to 'scene/2d/tile_map.cpp')
-rw-r--r-- | scene/2d/tile_map.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/scene/2d/tile_map.cpp b/scene/2d/tile_map.cpp index 4286d88ab1..41097ce8d7 100644 --- a/scene/2d/tile_map.cpp +++ b/scene/2d/tile_map.cpp @@ -587,7 +587,9 @@ Map<TileMap::PosKey, TileMap::Quadrant>::Element *TileMap::_create_quadrant(cons xform.set_origin(q.pos); //q.canvas_item = VisualServer::get_singleton()->canvas_item_create(); - q.body = Physics2DServer::get_singleton()->body_create(use_kinematic ? Physics2DServer::BODY_MODE_KINEMATIC : Physics2DServer::BODY_MODE_STATIC); + q.body = Physics2DServer::get_singleton()->body_create(); + Physics2DServer::get_singleton()->body_set_mode(q.body, use_kinematic ? Physics2DServer::BODY_MODE_KINEMATIC : Physics2DServer::BODY_MODE_STATIC); + Physics2DServer::get_singleton()->body_attach_object_instance_id(q.body, get_instance_id()); Physics2DServer::get_singleton()->body_set_collision_layer(q.body, collision_layer); Physics2DServer::get_singleton()->body_set_collision_mask(q.body, collision_mask); |