Planet map enter and render
Hey folks,
Im creating a No Mans Sky type game where I can fly through space and visit planets and collect some stuff from planet and etc. .....and maybe build some stuff (its only alfa beta delta version :D) Imagine. I have a planet who has a spheric terrain map arround it so Im flying through space and I want to visit it. So my first question is .... how to make a planet enter? How to leave a space map and enter a planet map?
My thoughts so far... to create a space map arround the planet where player enters a planets stratosphere and enters a planets cloud map who could cover whole players screen where game could prepare and render first layer of planets map.Aaaand my second question is .... how to make a stable, non-jumpy FPS planet enter map render?
Im making this game using free Unity version.
All ideas are helpful :)
Paul Leonard
Answer by Matt-Murch · Jun 21, 2017 at 01:33 AM
Sounds like you're on the right track!
There are two ways I would do it, either connecting your planet and space seamlessly (hard) or having a distinct "barrier" (easy). It sounds like you are looking for the 'easy' option. I'll go over a basic explanation for each.
Easy way: *Battlefornt: Elite Squadron*
Have a space map with a big sphere for your planet and atmosphere in one scene. Use the atmosphere as a trigger collider. On Trigger enter you can use additive loading to bring in your proper planet scene and take out your space scene. Do the same for the planet map. You'll want to start you ship in an empty scene and load in whichever scene you want when you start the game.
You can get some plugins that do this as well like Sectr Stream.
Hard Way: No man's sky, *Star Citizen*
Both of these games use procedural generation to render on the fly.... which is harder than I know how to do. I would recommend using LODs (Level of details) where you swap out low and high quality meshes as you get closer, you could generate these if you know how, or use your own geometry models.
You would have your space view with a sphere, and as you got closer you would go to a medium detail, and then you could have as many as you need to transition to your full detail ground geometry. You can use spheres with cloud maps on them, and if you use a sphere with inverted normals you can get a pretty good atmosphere behind your planet.
You can do the same for your space objects, or even unload them once you are in atmosphere.
Hopefully those help, Matt
Hey $$anonymous$$att,
thanks for brilliant examples. Well as a beginner developer I`m looking for a easier way :D. Update on a game I have a "3 layer render system" going, but it`s quite laggy when you reach one of the height values and all the textures have to load. Buuut, with LODs (level of details) system that problem will be solved.
Thanks again for useful tips!
Paul Leonard
Your answer
![](https://koobas.hobune.stream/wayback/20220612122214im_/https://answers.unity.com/themes/thub/images/avi.jpg)