mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-28 23:38:25 +01:00
8999170435
VoxelShape coordiantes generally are an integer + a sum of powers of two between [-1, -3]. Most offsets are generally an integer. As a result, applying an offset to the coordinates generally results in an error of 0. However, coordinate inputs do not follow such trends. Thus, when applying an offset to the coordinate input, there may be some floating point error. By applying the offset to the VoxelShape coordinates, we can eliminate additional floating point error. This change also fixes the inconsistency when using the single AABB, as input coordinates were not offset when using the single AABB as the single AABB is already offset. Fixes https://github.com/Tuinity/Moonrise/issues/81 This specific issue is caused by floating point error resulting in the falling anvil's y position becoming around -8E-17 when it should be 0. While this is still very comfortably in the collision epsilon (1.0E-7), this results in the falling anvil's y block position to become -1 (as the block position is simply the floor of the coordinate). |
||
---|---|---|
.. | ||
api | ||
server | ||
unapplied/server |