DerKarlos / OSMeta

OSM "Metaverse"
Other
15 stars 2 forks source link

Galileo was wrong, the earth is at the center of the universe #56

Closed oli-obk closed 7 months ago

oli-obk commented 7 months ago

This PR uses the big_space crate to allow full position precision as long as we stay within 100x the width of the milky way 🙃

there are a few caveats around usage, but mostly everything just kept working.

The fog and sky are different now. The sky is a blue sphere at 200km above the earth. The fog is mostly a suggestion, not a useful thing anymore. we'll have to see how to scale it correctly when you fly up far enough. This needs to be done hand in hand with https://github.com/DerKarlos/OSMeta/issues/43 (loading lower resolution tiles and using bigger squares when you move farther away)

DerKarlos commented 7 months ago

Fascinating! The whole Earth! We could have a raw satellite bitmap on it? ADDENDUM: We cold use OSM tiles zoom 1 or 2 and merge them to 1 texture (and add some pixels for the poles!)

Going back into space shows the Earth and a tiny spot of the loaded tiles :-) The blue heaven. There are bitmaps with clouds. The Blue is needed anyway, but only inside. I think it is 100km or less.

OK! BAD TESTING: The loaded tiles are a square now; we should keep the cycle distance calculation. With FPS correction.

The emptiness outside: We need low LoD tiles. For now just OSM 2D bitmaps. Some rings with zoom 16,17,18. How far do we need low LoD tiles? Calculated by the camera height and the Earth radius. The distance calculation should be in 3D, so flying up will hide GLB tiles and show only 2D bitmaps.

I think, Bevy has a function to check if a mesh is visible in the frustum. If the pink tile is outside, no GLB or Bitmap is needed.

I did fly up far away and back down: 'cargo run'" terminated with exit code: 101. More testing is needed

Speeding that hard will go outside the server tiles. A lot of Errors. A scan of the server dirs could avoid this.

oli-obk commented 7 months ago

I did fly up far away and back down: 'cargo run'" terminated with exit code: 101. More testing is needed

Yea, there's a bug somewhere that happens only randomly. I am trying to get a backtrace of it