summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--core/command_queue_mt.h2
-rw-r--r--demos/2d/rubegoldberg/engine.cfg1
-rw-r--r--servers/physics_2d/space_2d_sw.cpp8
3 files changed, 6 insertions, 5 deletions
diff --git a/core/command_queue_mt.h b/core/command_queue_mt.h
index 84c3687b08..4fd33e3a55 100644
--- a/core/command_queue_mt.h
+++ b/core/command_queue_mt.h
@@ -983,7 +983,7 @@ public:
void flush_all() {
- ERR_FAIL_COND(sync);
+ //ERR_FAIL_COND(sync);
lock();
while (true) {
bool exit = !flush_one();
diff --git a/demos/2d/rubegoldberg/engine.cfg b/demos/2d/rubegoldberg/engine.cfg
index bd1cc79ddb..f0c306a53d 100644
--- a/demos/2d/rubegoldberg/engine.cfg
+++ b/demos/2d/rubegoldberg/engine.cfg
@@ -6,5 +6,6 @@ icon="res://icon.png"
[physics_2d]
+thread_model=2
default_gravity=500
default_density=0.01
diff --git a/servers/physics_2d/space_2d_sw.cpp b/servers/physics_2d/space_2d_sw.cpp
index 90174d48ee..9ba6bdd5ba 100644
--- a/servers/physics_2d/space_2d_sw.cpp
+++ b/servers/physics_2d/space_2d_sw.cpp
@@ -192,7 +192,7 @@ int Physics2DDirectSpaceStateSW::intersect_shape(const RID& p_shape, const Matri
if (p_result_max<=0)
return 0;
- Shape2DSW *shape = static_cast<Physics2DServerSW*>(Physics2DServer::get_singleton())->shape_owner.get(p_shape);
+ Shape2DSW *shape = Physics2DServerSW::singletonsw->shape_owner.get(p_shape);
ERR_FAIL_COND_V(!shape,0);
Rect2 aabb = p_xform.xform(shape->get_aabb());
@@ -239,7 +239,7 @@ bool Physics2DDirectSpaceStateSW::cast_motion(const RID& p_shape, const Matrix32
- Shape2DSW *shape = static_cast<Physics2DServerSW*>(Physics2DServer::get_singleton())->shape_owner.get(p_shape);
+ Shape2DSW *shape = Physics2DServerSW::singletonsw->shape_owner.get(p_shape);
ERR_FAIL_COND_V(!shape,false);
Rect2 aabb = p_xform.xform(shape->get_aabb());
@@ -367,7 +367,7 @@ bool Physics2DDirectSpaceStateSW::collide_shape(RID p_shape, const Matrix32& p_s
if (p_result_max<=0)
return 0;
- Shape2DSW *shape = static_cast<Physics2DServerSW*>(Physics2DServer::get_singleton())->shape_owner.get(p_shape);
+ Shape2DSW *shape = Physics2DServerSW::singletonsw->shape_owner.get(p_shape);
ERR_FAIL_COND_V(!shape,0);
Rect2 aabb = p_shape_xform.xform(shape->get_aabb());
@@ -474,7 +474,7 @@ static void _rest_cbk_result(const Vector2& p_point_A,const Vector2& p_point_B,v
bool Physics2DDirectSpaceStateSW::rest_info(RID p_shape, const Matrix32& p_shape_xform,const Vector2& p_motion,float p_margin,ShapeRestInfo *r_info, const Set<RID>& p_exclude,uint32_t p_layer_mask,uint32_t p_object_type_mask) {
- Shape2DSW *shape = static_cast<Physics2DServerSW*>(Physics2DServer::get_singleton())->shape_owner.get(p_shape);
+ Shape2DSW *shape = Physics2DServerSW::singletonsw->shape_owner.get(p_shape);
ERR_FAIL_COND_V(!shape,0);
Rect2 aabb = p_shape_xform.xform(shape->get_aabb());