I'm trying to learn about ways to represent far away objects in a game world, to which the player could actually walk.
Here's an illustration of what kind of thing I'm talking about.
Let's assume the player could walk all the way to the volcano and climb it.
What's the best way to program this? Specifically I'm interested in how the farthest objects are rendered. One idea I have is to use bill boards (2D representatives for objects that are far off). But then the question poses itself when to switch from the 2D representation of the volcano to the 3D model. I suppose this could be tested and tweaked until it feels okay. Also, what complicates the situation is, if we assume that the player is at the other end of the world viewing the volcano from that other side. Now we'd need billboards for all possible view angles. That seems like a bit of a nightmare.
Are there any other or better ways to do this, that I should be aware of?
My second question is related to the above question. I currently have a level-of-detail representation of the game world (using the “Chunked LOD” paper). Currently the game always loads the 9 surrounding geometry chunks of lowest LOD, and then refines the places, which are near to the player, by loading higher resolution representatives. With 9 chunks I have a problem: The corners and edges of the current “end of the world” can be seen. Have a look at the red arrow in the picture below, to illustrate the problem.
My first thought, how to solve this was, that I could just load another surrounding ring of lowest LOD geometry and place them around the other chunks. But this feels like just ‘kicking the can down the road’. The player would probably still be able to see the jaggy end of the world, only a little further away. I haven't tried this yet though.
Is there something I'm missing? If you have any ideas how this kind of problem is solved, please let me know. Also any papers, or search terms I might not be aware of would be helpful.