The Flat Earth - A cartographer's wet dream/nightmare

Published September 09, 2017
Advertisement

My still fairly unoriginal work with blocks has reached a benchmark point: I have started shaping the previously random blocks into actual landscapes. Other than the octree level-of-detail thing, it is still just the beginning of a weak Minecraft clone, but way is being made, I swear!

My current struggle is not, however, a bunch of fancy code. Minecraft veterans know that in that game, the world is truly and completely FLAT. Go far enough and it just starts getting weird landscapes, the infamous Far Lands (if they still exist, I have not played the newer versions). At first, this will be similar to my clone. But as soon as it fits my work, I want to break from that strange geography. I want not just worlds, but planets! And that begs the question.... How do you make a round planet with square blocks??

The thing is, sure, I could just make a sphere out of blocks. But if blocks lay flat at the North Pole, they will be edges- or corners-up as you move towards the Equator. Pick a picture from a Google search of a block planet and turn it slowly. Whatever is up is what someone on the surface sees. It is a bitvof a mess in many places...

But I love maps. I have atlas after atlas on my shelves and maps decorate my walls. Loooove that stuff! So it should be easy to find a way to use a flat map, right? Well, no. It is only easy 90% of the way. Sure, going west just means you get to the edge and start over from the eastmost edge. But what about the poles? WHAT ABOUT THE POLES, GARY?!? See, when you get to, say, the northern edge of the map, you need to go... somewhere. The easy solution is just to flip the map over and go from the northern edge and down again. Like putting the tops of two world maps together. But then you get a North Pole as big as the entire world!! Look at flat maps. The Arctic and Antarctic are huuuge. Circling the North Pole is like circling the entire Equator! It works, but...

I went through several options. What I ended on is this: Take a snapshot of the globe from two opposite sides, with the poles at top and bottom. Now, stretch those two pictures into squares. However, the corners of each square are north, south, east and west! So the resulting squares stand at a 45 degree angle, balancing on the South Pole corner. Now slap them together, and you get a two-sided Flat Earth, which is square.

This is the best combination of simple and accurate I have currently found, but I keep having nagging feelinga about how the flat landscape will look when crossing the poles. Who knows, I may just end up using the original flipped world map. I am no cartographer, and it is starting to show! I guess my maps and atlases can only help me so much....

Have any of you had that dilemma?What did you end up doing?

0 likes 3 comments

Comments

JTippetts

I don't really understand the dilemma here. I mean, I do understand it, but at the same time I don't. Cubes are not a good representation for a traditional round planet with surface-perpendicular gravity. They are an excellent representation for an infinitely flat world. Trying to marry the two (cubes + round planet) just makes for a messy abstraction, and I fail to see the point. If you want round planets, you're better off choosing a different representation than cubes. But if you want cubes, you're better off with a flat world. Choosing both seems to be signing you up for a substantial amount of pain, and I don't really see how it improves the gameplay experience for the player.

In the past, I always just chose the abstraction that was most appropriate for what I was doing. When I played with block worlds, they were infinitely extensive flat block worlds, with easy-to-grasp topology. When I played with planets, they were recursively sub-divided spheres, with varying level of detail, and always a pain in the ass to deal with the edge cases. I much preferred the block worlds.

September 09, 2017 11:24 PM
Eck

Have you considered not using a sphere for your planet? You could have a cube planet instead. 

Another possible solution is a "flat" ring world, say north and south are your edges of the world.  If you keep walking east, you'll eventually come back from the west side. If you walk north, you hit a wall. Or fall off the edge of the world into space. 

Or a torus (doughnut) world. Same as the ring world, but instead of north and south being borders, walking north wraps around down to the south side.

There doesn't have to be a curve for these solutions, so the problem goes away. :)

- Eck

 

September 10, 2017 08:17 PM
Embassy of Time
On 10/9/2017 at 1:24 AM, JTippetts said:

I don't really understand the dilemma here. I mean, I do understand it, but at the same time I don't. Cubes are not a good representation for a traditional round planet with surface-perpendicular gravity. They are an excellent representation for an infinitely flat world. Trying to marry the two (cubes + round planet) just makes for a messy abstraction, and I fail to see the point. If you want round planets, you're better off choosing a different representation than cubes. But if you want cubes, you're better off with a flat world. Choosing both seems to be signing you up for a substantial amount of pain, and I don't really see how it improves the gameplay experience for the player.

In the past, I always just chose the abstraction that was most appropriate for what I was doing. When I played with block worlds, they were infinitely extensive flat block worlds, with easy-to-grasp topology. When I played with planets, they were recursively sub-divided spheres, with varying level of detail, and always a pain in the ass to deal with the edge cases. I much preferred the block worlds.

 

15 hours ago, Eck said:

Have you considered not using a sphere for your planet? You could have a cube planet instead. 

Another possible solution is a "flat" ring world, say north and south are your edges of the world.  If you keep walking east, you'll eventually come back from the west side. If you walk north, you hit a wall. Or fall off the edge of the world into space. 

Or a torus (doughnut) world. Same as the ring world, but instead of north and south being borders, walking north wraps around down to the south side.

There doesn't have to be a curve for these solutions, so the problem goes away.

- Eck

 

The answer is sort of the same for both these issues: It is a temporary approximation. The end goal is a solution as easily mutable as blocks, but as physically diverse as, well, not blocks (I usually call the opposite of blocks "blobs"). In the meantime, I want to get as close as possible to that solution with just blocks, so I can test out other features.

The solution presented in the blogpost collapsed on closer examination, btw. The current two candidates are a classic infinite world or an infinite space with flat worlds in it!

September 11, 2017 11:44 AM
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Advertisement
Advertisement