Live data from Hacker News

Making Minecraft Spherical

bowerbyte.com

51–60 of 130 posts

Re: Making Minecraft Spherical

#51
post #9

Wonderful write-up of attempting to tackle this problem. I believe there must be a significant number of people who have played both Minecraft and Super Mario Galaxy, and had something like this sequence of thoughts - although you have followed it all the way to an actual demonstration, and written up your thoughts along the way so clearly. The vertical distortion is the biggest issue IMO, there are a few reasonably…

Space engineers

Re: Making Minecraft Spherical

#52

I tried making spherical grid planets before, and keep on wondering about the best compromises. Looking at the description, your version presumably has: Certain blocks corresponding to the corners of the cube, where despite anti-distortion efforts the blocks will have one corner at 120° instead of 90°, Triplets of blocks at these locations, where turning twice gets you back to the first block, Blocks that get smaller…

I didn't downvote you, but you're just repeating what's in the article. And you say "presumably" so it sounds like you're guessing without fully reading? Which isn't adding anything to the conversation.

Re: Making Minecraft Spherical

#53
Given how naturally you can map a grid of quads onto a strip of adjacent triangular faces, I wonder if you might end up with a better distribution of the distortion using a geodesic sphere rather than a puffed-out cube as the basis— at the cost, of course, of an even more hair-raising coordinate scheme for actually addressing it all.

Anyway, you're never going to avoid the existence of some special nodes where three corners come together, and this does nothing to address the altitude problem, but I think it might result in a more uniform surface especially as the overall diameter goes up.

Re: Making Minecraft Spherical

#54

Earlier quoted context omitted.

That actually sounds pretty close to what I would expect to happen IRL. After all the mass is mostly all around you at that point and depending on how far you are towards the core you might build up speed, overshoot the target and then do it all over again. But hollow planets are hard to come by so this is just my imagination, I'm sure someone has worked out exactly what would happen.

Newton worked this out in what is now know as the shell theorem. If you have a hollow spherically symmetric body, then any point inside of the body experiences no net gravitational force. In contrast, points outside of the shell experience the same force as if the body were a point mass. For ideal (spherically symmetric) planets where a point is underground, you can divide the planet into 2 regions. The shell of the…

That's super interesting, thank you for posting this!

Re: Making Minecraft Spherical

#55

I tried making spherical grid planets before, and keep on wondering about the best compromises. Looking at the description, your version presumably has: Certain blocks corresponding to the corners of the cube, where despite anti-distortion efforts the blocks will have one corner at 120° instead of 90°, Triplets of blocks at these locations, where turning twice gets you back to the first block, Blocks that get smaller…

I didn't downvote you, but you're just repeating what's in the article. And you say "presumably" so it sounds like you're guessing without fully reading? Which isn't adding anything to the conversation.

I think only the part about blocks getting smaller as you go down and then doubling in size again is in the article. Will check.

I'm saying "presumably" because of points the article didn't spell out. Edit: I re-read and it doesn't talk about the very much non-cuboid blocks at the corners, or the pointed blocks at the core. Not in words, anyway. They're implied in the pictures.

If you want comments that build on this ... it's the triplets of quads that really bother me. They only appear at eight places on the surface of the planet, but it would mess with strategy in a strategy game (my own efforts were inspired by trying to create Civ on a true sphere) if routes between tiles are sometimes short-circuited. It would also distort house architecture in a sims-like, and mess up city grids if one of these triplet corners happens to be in the middle of your city, which would then go from having north-south and east-west streets to having ... six cardinal directions?

Re: Making Minecraft Spherical

#56

Why can't you cover spherical surface with quads so that 4 lines meet at every vertex? How would the proof of that look?

> If you want only quadrilaterals, and you want most vertices to be a meeting between 4 quadrilaterals, but some places 3 quadrilaterals meet, you can use the Euler characteristic to deduce that there must be 8 of these degenerate vertices.

https://math.stackexchange.com/a/4904806

Re: Making Minecraft Spherical

#58
Could you just cheat and render part of larger square map (with top wrapped to bottom and left wrapped to right) inside a circle and deform it so it just gives illusion but isn't really a sphere?

Quick experiments in blender show me that you can create a cube, then use subdivision modifier to get a fake sphere like the one in the article. Then put camera close to the surface and give it very low focal length. This way it looks like a sphere but the strange points where 3 quads meet are way out of the view so I basically see just one face of 6 sided sphere.

If I now textured this side so that it displays roughly 50% of the square texture containing the world map and scrolled and rotated the texture as I try to "rotate" the sphere I should pretty much not be able tell it from a real sphere but have a 100% normal 2d square Minecraft grid on top of it.

It looks quite nice, even and natural:

https://postimg.cc/XXNgCYF8

Texturing is a bit weird because polar caps are just two regions of the world with stuff in between them in all directions so you need to put them at the right distance and size them properly so they show up. And even then they disappear as you rotate the world by scrolling in W-E direction. To make them visible at all times, you'd need to make them half of your world. Which might be fine for your game to have vast, icy biome connecting north and south of your planet. Or even two separate zones of the planet separated by northern and southern walls of ice.

https://postimg.cc/34GCKkDj

I'm not sure how well lightning is going to work with such low focal length but it might be fine.

https://postimg.cc/ThGWyN8v

Re: Making Minecraft Spherical

#59
post #28

I wonder if it is possible to avoid "digging deep" problem by first building a cube out of voxels and then applying the type of distortion that turns the cube into quad sphere not just to the surface of the cube but also to the insides of the cube. I don't know how to explain it better, perhaps I should try to write some code, lol

I see what you mean. An assumption in Minecraft-style games is the character stays the same size, but this needn't be the case. Your character could get smaller the further you dig down in order to match the decreasing size of the interior voxels. This would even create a kind of forced-perspective effect when looking down a hole, as objects at the bottom would look far more distant than they really are.

Re: Making Minecraft Spherical

#60
post #33

My favorite Spherical Minecraft-like gamedev project is PlanetSmith [0], which uses hexagonal voxels (and a few pentagonal voxels). The devlogs are very well produced and I highly recommend checking them out. [0] https://youtube.com/@incandescentgames

This is mentioned in the article:

> You can even reduce the amount of visible distortion by restricting players to a portion of a shell, so they never see the full difference in block size at its top and bottom.

> From what I can tell, this seems to be the approach used by the upcoming game PlanetSmith for its hexagonal-blocky planets.

Post reply on HN