diff options
author | Rémi Verschelde <remi@verschelde.fr> | 2015-12-04 09:31:01 +0100 |
---|---|---|
committer | Rémi Verschelde <remi@verschelde.fr> | 2015-12-04 09:31:01 +0100 |
commit | 9457211f8fd673eb5ef7d32c7ddb0157d2735753 (patch) | |
tree | aedbf17e8e32008386db3de5ecaf662ffd1a0902 | |
parent | e57dfe26632beeaf65cf15352db57424f2094deb (diff) |
Fix wrong index being used to populate r_results
Regression from f33d9da.
-rw-r--r-- | servers/physics/space_sw.cpp | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/servers/physics/space_sw.cpp b/servers/physics/space_sw.cpp index 4b59f2d0ba..778d20d3f1 100644 --- a/servers/physics/space_sw.cpp +++ b/servers/physics/space_sw.cpp @@ -175,17 +175,17 @@ int PhysicsDirectSpaceStateSW::intersect_shape(const RID& p_shape, const Transfo if (!CollisionSolverSW::solve_static(shape,p_xform,col_obj->get_shape(shape_idx),col_obj->get_transform() * col_obj->get_shape_transform(shape_idx), NULL,NULL,NULL,p_margin,0)) continue; - cc++; + if (r_results) { + r_results[cc].collider_id=col_obj->get_instance_id(); + if (r_results[cc].collider_id!=0) + r_results[cc].collider=ObjectDB::get_instance(r_results[cc].collider_id); + else + r_results[cc].collider=NULL; + r_results[cc].rid=col_obj->get_self(); + r_results[cc].shape=shape_idx; + } - if (!r_results) - continue; - r_results[cc].collider_id=col_obj->get_instance_id(); - if (r_results[cc].collider_id!=0) - r_results[cc].collider=ObjectDB::get_instance(r_results[cc].collider_id); - else - r_results[cc].collider=NULL; - r_results[cc].rid=col_obj->get_self(); - r_results[cc].shape=shape_idx; + cc++; } |