Long story short, I’m working on a 2D 4X style game. Yes, its space themed, hence Floating Origin. I’ve created it (as far as I’m aware) correctly, where every 1000m or so (I don’t specifically remember) everything shifts 1000m in the opposite direction, grouped by a sector system I created, where different areas of the map are stored via children, so the whole map is currently 9 sectors, each holding… stuff. Star systems and ships and whatnot. Once the camera moves too far, everything shifts back. The camera has a zoom system, which can zoom into individual ships, and zoom out to the whole galaxy, using various systems of speed manipulation, sprite alpha shifting, and not rendering 3/4 of objects past a certain zoom level.
That being said…
The floating origin system fixes the error caused by only 7 points of accuracy, keeping “important” things close to the origin/player/camera. My question is, with this type of system, do far away objects (like the sectors, or individual testing objects) not have their location properly stored after moving too far away?
For example, lets say I place an object on the far right of the map, and move the camera in the opposite direction for a while, so the object goes way beyond 1 million units away, or at least enough for it to “break”. if I move the camera back to the original position (and even to the object), would that object be in the same position, or would the 7 point precision errors “compress” its position to be off from where it started?
This is mostly hypothetical as I’m still messing with scaling, world size, etc., but I cant find anything specifically about this, and I cant think of a way to test it, since any benchmark would move the same way the testing object would.
Any help is appreciated, and even suggestions for how to better handle my game world if I’m actually a big dummy and don’t realize it. Thanks in advance!
