fixed the d value to fix collision glitches using 0.3f
* Either way is fine, even if this turns out to make things better it can't solve all issues. Ultimately the d has to go and the current solution is beyond repair imo. * backported comits are in: * https://github.com/minetest/minetest/pull/9365 * https://github.com/minetest/minetest/pull/9327 * fixes: * https://github.com/minetest/minetest/issues/6886 Unexpected collision when beginning a jump that pushes the player * https://github.com/minetest/minetest/issues/9143 Huge increase in collision since 5.X
This commit is contained in:
parent
896eb23701
commit
ee31b5db78
@ -410,12 +410,13 @@ collisionMoveResult collisionMoveSimple(Environment *env, IGameDef *gamedef,
|
||||
Collision uncertainty radius
|
||||
Make it a bit larger than the maximum distance of movement
|
||||
*/
|
||||
f32 d = pos_max_d * 1.1;
|
||||
// A fairly large value in here makes moving smoother
|
||||
//f32 d = pos_max_d * 1.1;
|
||||
// A fairly large value in here makes moving smoother but more rare too
|
||||
//f32 d = 0.15*BS;
|
||||
f32 d = 0.3f; // Temporary fix, any nonzero d causes collision glitches, the more the greater it is.
|
||||
|
||||
// This should always apply, otherwise there are glitches
|
||||
assert(d > pos_max_d); // invariant
|
||||
//assert(d > pos_max_d); // invariant
|
||||
|
||||
int loopcount = 0;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user