Probably the biggest advantage of a hex-based versus square-based map tiling is that the center of each hex has the same distance to all its neighboring hexes. Is there a similar shape that tiles this way in 3D, and an engine that supports such a model?
|
|
I agree with @Cyclops that this is probably better asked on the math stack exchange, but in the mean time you may want to look into the Hexagonal Close Packing structure. It is the densest possible arrangement of spheres in 3D, and while the distance to all neighbours isn't uniform it may be the best you're going to get. The Diamond Cubic lattice has an equal distance to direct neighbours, but it's quite loosely packed, and each point only has four adjacent points. |
|||
|
|
Google and Wikipedia tag team to the rescue: Tessellation and, more specific for 3D, Honeycomb is the term to look for. Cubes are indeed the only regular (all faces are congruent) AND space-filling (no gaps left as with sphere packing) polyhedra in 3D space. But they have the same problem as 2D squares - widely varying distances to its neighbors. A Bitruncated cubic honeycomb made of truncated octahedra (quite a mouthful) comes very close to what I was asking for. The downsides are that the truncated octahedron is not regular (squares and hexes as faces) and has fewer neighbors than a cube (14 vs 26), but it fills space with a single, repeated solid and has (roughly) equal distance to all its neighbors. |
|||||||
|
|
There are two simple 3D analogues of the hexagonal lattice: Hexagonal Close Packing (HCP) and Cubic Close Packing, a.k.a. the Face-Centered Cubic (CCP / FCC) lattice. Both of these lattices are quite similar: they have the same number of nearest neighbors per site (12) and the same sphere packing density (~74%), and they can both be decomposed into stacked 2D hex lattices. Of the two, I would consider the CCP lattice somewhat "nicer": it's more symmetrical, having no preferred axis like the HCP lattice. In particular, if you were to sit inside one of the cells of the CCP lattice and looking at one of the nearest neighbor cells, the lattice would look the same regardless of which of the neighbor cells you were looking at. This does not hold true for the HCP lattice. The cells of the CCP tiling are nice and symmetric rhombic dodecahedra, while those of the HPC are twisted into trapezo-rhombic dodecahedra. Here's a picture of some rhombic dodecahedra tiled to form a CCP lattice from Wikipedia: (Picture by Wikipedia user AndrewKepert, licensed under GFDL 1.2+ / CC-By-SA 3.0.) Also note that, as the alternative name "face-centered cubic lattice" suggests, there's a very simple formula for finding the centers of the cells in a CCP lattice: start with a simple cubic lattice, with points at the corners of the cubes, and add new points at the centers of the faces of the cubes. The nearest neighbors of the points at the corners are those on the 12 adjacent faces, while the nearest neighbors of the points on the faces are the 4 on the adjacent corners plus the 8 on the adjacent faces of the two cubes sharing the face on which the center point lies. (With some geometry, you can show that the neighborhoods of all points in fact look the same, even though this construction makes it seem as if the "face points" were different from the "corner points".) (Note: The MathWorld page I linked to above seems to contain a mistake, giving the density of the related, non-close-packed "Body-Centered Cubic" lattice also as 74% — it's actually about 68%.) |
|||
|
|

