Friday, September 04, 2020

[mlgtmhbc] Earth Minecraft

Consider constructing a model of the Earth's surface in a cube-based universe like Minecraft.  Here are some possible map projections:

Quadrilateralized spherical cube (quad sphere): Neither equal area nor conformal.  How bad are the regions of worst distortion?  What should the orientation be so that the cube vertices (where there is the most distortion) land in unimportant locations?  North Pole could be a vertex or the center of a face or somewhere else.

Regions in HEALPix (H=4, K=3) are squarish quadrilaterals.  Equal area but not conformal.

Mercator projection: conformal but not equal area.  Conformal is good because shapes retain their real world shapes.  You begin to feel more like an ant the closer to the poles you go; the scale does not remain 1 cube = 1 m^3.  Or maybe you grow taller as you approach the poles.  North and South poles are inaccessible.  (South Pole Station will be gargantuan.)

Orient a square so that it is a diamond.  Abstractly glue the top two edges together, and the bottom two edges.  This topologically creates a sphere.  What is a good map projection of a sphere onto this diamond?

Collignon, with parameters that make it a diamond and not a triangle, is one way to do it.  It is equal area but not conformal.  Here is an unanswered StackExchange question asking for the formulae of that diamond parameterization.

Collignon can also project to two diamonds, but HEALPix is probably better if exploring that route.

Is there a conformal (so not equal area) projection of a sphere onto a diamond?

Peirce quincuncial gets close, but edges are glued differently than the spherical diamond.  It has some singularities where scale blows up to infinity, which probably is to be expected.  A game using this kind of projection should probably make regions near singularities inaccessible.

If the fundamental building block in our Minecraft world were not a cube but an (approximately) equilateral triangular prism, then we could use an icosahedron-based geodesic triangulation of a sphere.  Maybe the fundamental brick should be the prism of a drafter (30-60-90, approximately) to be able to make 90 degree corners.  A geodesic triangulation is analogous to the quad sphere, but the icosahedron's twelve vertices better spread out the distortion.  Tegmark icosahedron might be relevant.  Are there better ways if we want to spread out the ugliness among more places?

There is a fundamental aesthetic problem of, what if there is a rectangular object, e.g., building, which is not aligned with the orientation of the world grid?  Maybe do Gouraud shading.

Maybe have a whole bunch of square-grid-based regions, each with their own alignment, which overlap.  Magic happens to smooth overlaps.  You can see cubes and the local grid only when in edit mode.  Some patches could even be based on a triangular grid, if that better suits the local architecture or topography.  Similarly, the basic cube could be a brick with different dimensions depending on what is locally convenient.

Ways Minecraft would need to be modified:

Height (vertical axis) needs to be able to be much greater than 256 meters because features on earth are taller than that.  And if the projection is not equal area, things can get even taller than real life.

Which way North is is always going to be confusing, likely changing with respect to the grid grain depending on where you are on Earth, so the game should provide a compass tool.

Weird things happen at corners.

No comments :