diff options
author | Juan Linietsky <reduzio@gmail.com> | 2015-04-24 22:41:31 -0300 |
---|---|---|
committer | Juan Linietsky <reduzio@gmail.com> | 2015-04-24 22:41:31 -0300 |
commit | f971ae32e1f16e453afdc4fd11cb29f8f3b0cf2a (patch) | |
tree | 3051661d117bdcd29580b15d899310716cd70a84 | |
parent | 1f8e3117dd8643b9c6d6127a891a0f4673479fa2 (diff) |
casting line into physics on negative space now works properly, fixes #1726
-rw-r--r-- | servers/physics_2d/broad_phase_2d_hash_grid.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/servers/physics_2d/broad_phase_2d_hash_grid.cpp b/servers/physics_2d/broad_phase_2d_hash_grid.cpp index e5f9c347a7..4651d485c2 100644 --- a/servers/physics_2d/broad_phase_2d_hash_grid.cpp +++ b/servers/physics_2d/broad_phase_2d_hash_grid.cpp @@ -467,9 +467,10 @@ int BroadPhase2DHashGrid::cull_segment(const Vector2& p_from, const Vector2& p_t delta.x=cell_size/delta.x; delta.y=cell_size/delta.y; - Point2i pos = p_from.floor() / cell_size; - Point2i end = p_to.floor() / cell_size; - Point2i step = Vector2( SGN(dir.x), SGN(dir.y)); + Point2i pos = (p_from/cell_size).floor(); + Point2i end = (p_to/cell_size).floor(); + + Point2i step = Vector2( SGN(dir.x), SGN(dir.y) ); Vector2 max; |