#Double Precision Transforms
1 messages · Page 1 of 1 (latest)
Unity engine itself ( transforms, physics, editor ) doesn’t support double precision. So basically our recommendation about max world size is around 50km ( ie 50.000 units )
However DOTS mathlib & Burst compiler are supporting it (ie 64bits floating numbers).
Also please note that HDRP shaders are working in “relative camera” position to minimize graphics glitches when dealing with objects far from the origin.
Double precision has a steep performance penalty so we're unlikely to switch component width. But the DOTS team has some early ideas for supporting large, open worlds without requiring 64-bit width translation and it's something we intend to explore over the year.
One last note, with the revised Transform System in entities 1.0, it's feasible for users to replace the entire Entity transform system, so folks who want to weigh the tradeoffs between precision/performance can do so themselves.
Question from forum
Can you please elaborate more on this penalty? Unreal passes two single precision vectors instead of one, and they assert that performance impact across CPU/GPU is minimal.
Do you have a link to the relevant forum thread?
Thanks