Restore exact Morrowind gravity

Morrowind's gravity is 627.2 units/s², but since #4645 (closed) OpenMW has been calculating it as 627.12. How can we promise absolute parity while such egregious error persists?!

In the past, gravity used to be a literal 627.2f. #4645 (closed) replaced it with GravityConst * UnitsPerMeter, where GravityConst = 8.96f is 9.8 yards/s² converted to meters. The thread there reasons that 8.96 * 70 = 627.2, but UnitsPerMeter is 69.99125, and 9.8 yards is actually 8.96112 m, so the rounding doesn't cancel out. Morrowind.exe itself computes gravity as 64.0f * -9.8f in the MobManager constructor, which matches the yards anecodte in the comment.

The change is that gravity is now defined in game units instead of going through meters and comes as exactly 627.2. GravityConst is gone and every place that multiplied it by UnitsPerMeter uses GravityUnits now. Pretty straightforward.


Edited by Kirill Blagodarov

Merge request reports

Loading
Loading