Existe-t-il un équivalent 3D des cartes de tuiles hexagonales?

26

Le plus grand avantage d'une mosaïque basée sur un hexagone par rapport à une carte carrée est probablement que le centre de chaque hex a la même distance par rapport à tous ses hex voisins. Existe-t-il une forme similaire qui se mosaïque de cette façon en 3D et un moteur qui prend en charge un tel modèle?

Hackworth
la source
Vous posez en fait deux questions (non recommandé). La première question, concernant les formes 3D (autres que les cubes je suppose), appartient vraiment à math.stackexchange.com . Le second est plus lié au jeu, bien que je soupçonne que la réponse est non. :)
Cyclope
1
Les carrés ont également la même distance à tous les carrés voisins (en supposant qu'un voisin est un carré qui partage un bord)
bummzack
2
J'ai envisagé de le mettre en mathématiques, mais j'ai pensé que le sujet était peut-être trop proche de l'applicabilité dans le monde réel;) Mais j'essaierai alors.
Hackworth
@bummzack Si ce n'était pas évident d'après la question, j'ai bien sûr fait référence au cas où vous comptez les 8 carrés comme voisins, ou 26 cubes en 3D.
Hackworth
J'ai un peu édité votre question pour minimiser le "mathiness" du premier bit et mettre davantage l'accent sur l'aspect moteur.
Josh

Réponses:

19

L'équipe de tag Google et Wikipedia à la rescousse:

Tessellation et, plus spécifique pour la 3D, Honeycomb est le terme à rechercher. Les cubes sont en effet les seuls polyèdres réguliers (toutes les faces sont congruentes) ET remplissant l'espace (pas de vide comme avec le remplissage de sphères) dans l'espace 3D. Mais ils ont le même problème que les carrés 2D - des distances très variables par rapport à ses voisins.

Un nid d'abeilles cubique tronconique fait d' octaèdres tronqués (une bouchée) est très proche de ce que je demandais. L'inconvénient est que l'octaèdre tronqué n'est pas régulier (carrés et hexagones comme faces) et a moins de voisins qu'un cube (14 contre 26), mais il remplit l'espace avec un solide solide répété et a une distance (à peu près) égale à tous ses voisins.

Hackworth
la source
+1 Intéressant. Votre nombre de voisins de cube semble cependant être désactivé (devrait être 26 au lieu de 28?).
bummzack
+1 en nid d'abeille, c'est bien. Je connaissais la structure, j'avais oublié le nom.
Ingénieur
9

Les cartes hexagonales 2D sont une représentation de sphères emballées dans un plateau plat (2D), chaque hexagone étant centré sur la sphère équivalente, et permettent de déterminer les distances entre les cellules à une précision réalisable (à des fins de jeu de toute façon), juste en comptant le nombre de cellules hexagonales à travers lesquelles vous passez.

La représentation 3D équivalente est la tessalisation cubique à faces centrées (FCC) / cubique (CCP) mentionnée ci-dessus, utilisant des dodécaèdres rhombiques.

Pavage cubique face centrée en trois dimensions

Cet article de Wikipédia fait référence à FCC / CCP en particulier et cet autre article le compare à l'emballage fermé hexagonal (HCP) mais le deuxième article a tendance à être un peu plus mathématique.

J'ai étudié leur utilisation dans la cartographie RPG, mais bien qu'il y ait une `` justesse '' attrayante à leur sujet (la base mathématique, la capacité à emballer l'espace sans lacunes, la symétrie lorsque les tranches sont prises à travers le réseau, etc.), le vrai les problèmes à des fins de jeu semblent être la difficulté que les joueurs / MJ rencontreraient pour les visualiser et l'absence d'un système de coordonnées évident pour les référencer.

Bien que cela me fasse mal, de simples cubes avec des coordonnées {x, y, z} ressemblent à une solution beaucoup plus simple, permettant à tout le monde de se concentrer sur le gameplay plutôt que d'être constamment dérouté par le choix non trivial de la norme de cartographie.

Juste mes 2 cents, bien qu'un ajout très tardif à ce fil.

Oh, à part pour les paramètres sur le thème de l'espace, chaque cellule a douze cellules adjacentes (trois au-dessus, trois en dessous et six autour du plan), ce qui permet un lien constellation / astrologie soigné. Imaginez un secteur d'origine dans la cellule de départ, puis nommez chaque secteur adjacent d'après l'une des constellations astrologiques. Tout comme les cartes hexadécimales peuvent être décomposées en hexagones plus petits, les cellules FCC pourraient être décomposées en cellules plus petites, permettant à chaque secteur nommé d'après une constellation d'être décomposé en sous-secteurs. "Fixons le cap au sous-secteur 031 du secteur Gémeaux" ...

Stuart

StuartW
la source
Je serais intéressé à discuter avec vous du problème des coordonnées hexadécimales 3D pour les RPG.
Kyle Strand
6

Il existe deux analogues 3D simples du réseau hexagonal: Hexagonal Close Packing (HCP) et Cubic Close Packing , alias le Face-Centered Cubic (CCP / FCC).

Ces deux réseaux sont assez similaires: ils ont le même nombre de voisins les plus proches par site (12) et la même densité de remplissage de sphère (~ 74%), et ils peuvent tous deux être décomposés en réseaux hexadécimaux 2D empilés.

Des deux, je considérerais le réseau CCP un peu plus "agréable": il est plus symétrique, n'ayant pas d'axe préféré comme le réseau HCP. En particulier, si vous deviez vous asseoir à l'intérieur de l'une des cellules du réseau CCP et regarder l'une des cellules voisines les plus proches, le réseau aurait la même apparence, quelles que soient les cellules voisines que vous regardiez. Cela n'est pas vrai pour le réseau HCP.

Les cellules du carrelage CCP sont de beaux dodécaèdres rhombiques symétriques , tandis que celles du HPC sont tordues en dodécaèdres trapézo-rhombiques . Voici une photo de certains dodécaèdres rhombiques carrelés pour former un réseau CCP de Wikipedia:

Carrelage rhombique dodécaédrique

(Photo par l'utilisateur de Wikipedia AndrewKepert, sous licence GFDL 1.2+ / CC-By-SA 3.0.)

Notez également que, comme le suggère le nom alternatif "réseau cubique à face centrée", il existe une formule très simple pour trouver les centres des cellules dans un réseau CCP: commencez par un réseau cubique simple, avec des points aux coins des cubes, et ajoutez de nouveaux points au centre des faces des cubes. Les voisins les plus proches des points aux coins sont ceux sur les 12 faces adjacentes, tandis que les voisins les plus proches des points sur les faces sont les 4 sur les coins adjacents plus les 8 sur les faces adjacentes des deux cubes partageant la face sur laquelle le point central se trouve. (Avec une certaine géométrie, vous pouvez montrer que les voisinages de tous les points se ressemblent en fait, même si cette construction donne l'impression que les "points de face" étaient différents des "points de coin".)

(Remarque: La page MathWorld à laquelle j'ai fait un lien ci-dessus semble contenir une erreur, donnant également la densité du réseau "Body-Centered Cubic" non serré et lié à 74% - c'est en fait environ 68%.)

Ilmari Karonen
la source
5

Je suis d'accord avec @Cyclops que c'est probablement mieux demandé sur l'échange de pile mathématique, mais en attendant, vous voudrez peut-être examiner la structure Hexagonal Close Packing . C'est l'arrangement de sphères le plus dense possible en 3D, et bien que la distance à tous les voisins ne soit pas uniforme, c'est peut-être le meilleur que vous obtiendrez. Le réseau Diamond Cubic a une distance égale aux voisins directs, mais il est assez lâche et chaque point n'a que quatre points adjacents.

SimonW
la source
HCP fonctionne bien en effet; il suffit de "squish" les couches un peu pour que la distance entre les centres des cellules soit la même dans toutes les directions. Une cellule a ainsi douze voisins - trois en haut, trois en bas et six sur le même plan.
Martin Sojka