Hello
I ask in case someone has a different approach, and in the hope of getting some feedback before i continue walking in the wrong direction.
I am trying to build a huge world, where the players can move at very high speed
I know i cant just create a scene, and throw the player there, as when the player moves far away from the origin, graphics and physics will start to have problems with 32 bit floats precision.
The first “solution” i though, was to created a pager that moves the world around the player. So everything happens near the 0,0,0
But then the “tiles” lost the static flag… and it starts running horrible.
I did a script to move objects from each tile to some arrays and hashes, and render them with DrawMeshInstanced.
This made it possible to “almost” run it smooth… but still i cant use anything different to realtime lighting…
So i though about next possible solution
Generate for each tile, a scene with that tile and the ones around, that is 9 tiles. And build for each one a scene.
That is, scenes with 9 tiles, each scene share tiles.
They will be loaded at the origin, and this time the scene will be static. The player will be loaded inside, and will move (world stays static). When the player get close to the border of the central tile i load the next scene, when player cross the border i swap the visible scene, and make the player jump to the new position.
I don’t like the fact of having repeated tiles information in each scene… but if i cant move the scenes, i don’t see other solution. I tried before to have different scenes loaded, so you see from one to the next scene… and i got lighting artefacts.