I don’t believe it’s a limitation in the engine, all numbers stored in a computer have a limit in size. You might need to separate your level into smaller levels but I’m not sure how you could do what you want in one huge level. Look at other huge space games like elite dangerous, they had to make it lots of smaller levels I think.
I have a quick question i’ve tried to search for a solution but i could not find the answer anywhere.
I’m building a space game which is extremely huge, but my problem is as much as i go far away from the 0.0.0 Vector till somewhere to be exact :
X = 24500000.0
Y = 24500000.0
Z = 0
My (Character, Physics etc…) is start to wobbling sometimes is blocking the movement input, and even the shadows are strange thick lines, why is that and is there a solution to increase that, to make my planets huge or i have to make them very small due to limitation of the engine ?
You can’t simulate real space distances.
You can shift world origin to where you are to get the float precision back. You cannot spawn an actor that’s 10m uus (10km) away for example.
Also, for a space game, the ship does not have to be 30 meters long, it can be 3m (300uu) providing everything else is to scale. This way you can divide space into fake 50km chunks. You can even make it 30cm and now you have a lot of space to work with…
This is generally enough for most stuff to be pixel size at best.
For stuff that’s further away, it’s smoke & mirrors. You put a widget label on the screen and say it’s 14 AUs away. If the player decides to travel in that direction, you lower the number (without even moving the player) until it’s within that 50km bubble of playable space, shift world origin (if necessary) and spawn in the object. Or stream in a level.
Large objects like planets can sit at the edge of the playable area and rather than get closer, they’re scaled up until they take the entire screen. The player will never know…
You can read up on float precision here:
Great answer!
I just found about Origin shifting to my current location and that would fix my problem, thank you so much for your time anyway.
I fixed my problem by making Origin point to my current world location after traveled X amount of uu away from previously set location.