Warum verwenden wir keine achteckigen anstatt sechseckigen Karten?

42

Ich verstehe den Vorteil von sechseckigen Fliesen gegenüber quadratischen. Aber warum werden stattdessen keine Achtecke verwendet? Ich würde denken, sie würden eine bessere, natürlichere Bewegung in acht Richtungen bieten.

Ich habe darüber nachgedacht, diese Art von Karte in einem Spiel zu verwenden, aber ich habe keine Spiele gesehen, die diese Karte verwenden. Ich frage mich also, ob ich etwas übersehen habe, das offensichtlich fehlerhaft daran ist, sie zu verwenden.

OK klicken
quelle
59
Achtecke kacheln nicht.
Jmegaffin
2
Ich frage mich, ob es noch andere Formen gibt, die wie Quadrate und Sechsecke
kacheln
12
@ Azaral: Es gibt nur Dreiecke, Quadrate und Felder. Dies wurde bewiesen.
Nicol Bolas
9
Das macht mich innerlich ein bisschen traurig
Azaral
11
Nun, tatsächlich gibt es Kacheln mit anderen regulären Polygonen, aber nur in nichteuklidischen Geometrien. Sie können zum Beispiel ein regelmäßiges Fünfeck auf eine Kugel legen.
TonioElGringo

Antworten:

69

Oktogone:

Bildbeschreibung hier eingeben

Sechsecke:

Bildbeschreibung hier eingeben

Die Lücken in den Achtecken sorgen für eine unattraktive Spielwelt.

Wenn Sie acht Bewegungsrichtungen zulassen möchten, verwenden Sie normalerweise nur Quadrate.

MichaelHouse
quelle
43
Eine Alternative ist, dass Ihr Spiel auf der hyperbolischen Ebene stattfindet, auf der Sie mit Oktogonen kacheln
MartianInvader
3
@MartianInvader Wie interessant!
Klicken Sie auf
"Die Lücken in den Achtecken sorgen für eine unattraktive Spielwelt." Ich würde es nicht so sagen, ich sehe die Verwendung für ein Muster wie dieses für weniger sichtbare Kacheln.
API-Beast
1
Richtig, "unattraktiv" ist das falsche Wort. Ich sollte sagen, dass die uneinheitliche Struktur sowohl für den Endbenutzer (der sich möglicherweise nur schwer an eine solche Struktur gewöhnen kann) als auch für den Entwickler, der es wahrscheinlich schwieriger finden wird, sie zu codieren, zusätzliche Komplexität mit sich bringt.
MichaelHouse
4
Das achteckige Muster mit Lücken entspricht einem quadratischen Muster ohne diagonale Bewegung, visuell um 45 Grad gedreht! (Und wenn Sie die Lücken mit quadratischen Fliesen füllen, ist es ein quadratisches Muster mit diagonaler Bewegung, aber seltsamer)
user253751
64

Dreiecke, Quadrate und Sechsecke sind die einzigen mathematisch möglichen regulären Kacheln, auch als reguläre Tessellationen der euklidischen Ebene bekannt . Also ja, das ist scheiße. Dreiecke sind hier völlig nutzlos, Quadrate saugen, weil man sich nicht diagonal bewegen kann, ohne einen etwas unhandlichen Faktor von 1.4142135623730950488016887242096980785696718753769480 zu haben ... give or take; und Sechsecke saugen, weil Sie sich nicht einmal gerade in beide Richtungen bewegen können. Versteht mich nicht falsch, ich bevorzuge sie immer noch gegenüber Quadraten im Rahmen der beschissenen Realität, die uns die Mathematik hinterlassen hat, und gehe zu Civ5, um endlich zu Hex-Gittern zu wechseln. Aber trotzdem, wenn es so wäre möglich, mit Achtecken zu tessellieren, würde niemand jemals einen zweiten Blick auf Sechsecke werfen.

Man könnte sagen "Nun, es ist mir egal, ob es Lücken gibt. Ich tue nur so, als ob sie nicht da wären." Sie würden die abgeschnittenen Quadrate erhalten, die als Quadrate bezeichnet werden, nicht weil es kleine quadratische Lücken gibt, sondern weil diese Achtecke in der Tat nur verherrlichte Quadrate sind, wenn es darum geht, die Ebene zu kacheln. Diese kleinen Quadrate sind das, was vom Abschneiden übrig bleibtDie Ecken von den Quadraten, die tatsächlich das Flugzeug kacheln würden, und in Bezug auf das Spiel war der Grund, dass Quadrate nicht an erster Stelle verwendet wurden, ein gleicher Abstand für gerade und diagonale Bewegungen, und das ist, was Sie hier nicht haben. Diagonale Bewegungen müssen den gleichen Abstand zwischen den Kachelmitten wie bei quadratischen Kacheln überbrücken. Umgekehrt, wenn Sie so tun, als ob Ihr magischer digitaler Raum tatsächliche Löcher hätte, können Sie das natürlich tun, aber was ist der Unterschied, wenn Sie nur quadratische Kacheln verwenden und diagonale Bewegungen genauso teuer ausführen wie gerade?

abgeschnittene quadratische Kacheln

Jetzt wäre das alles nicht so schlimm, wenn es wirklich gute Alternativen gäbe, die nicht euklidisch sind . Oft befindet sich unser Gitter sowieso auf einer Art Planeten. Warum also nicht eine elliptische Geometrie verwenden, dh die Oberfläche einer Kugel? Leider sind die Sphären viel, viel schlimmer, wenn es um regelmäßige Fliesen geht. Wo Sie in der Ebene mindestens so viele oder so kleine Kacheln verwenden können, wie Sie möchten, gibt es auf Kugeln fünf Anordnungen, die platonischen Körper. Das ist es. Und nur zwei von ihnen verwenden keine Dreiecke. https://en.wikipedia.org/wiki/Spherical_polyhedra

Die hyperbolische Ebene rockt jedoch wirklich, wenn es um Tessellationen geht. Es gibt nicht nur drei, sondern unendlich viele reguläre Tessellationen, darunter eine achteckige .

achteckige Kacheln in der hyperbolischen Ebene

Das einzige Problem ist, dass die hyperbolische Ebene nicht so schön ist wie eine flache Oberfläche oder eine Kugel, sondern im Grunde genommen die Oberfläche eines Pringle . Du würdest einen verdammt guten Story-Hook brauchen, um ein Spiel auf einem Pringle zu rechtfertigen;)

hyperbolisches Paraboloid

Trotzdem ist die achteckige Kachelung so elegant und die Poincaré-Scheibe sieht so fantastisch aus, dass ich wirklich überrascht bin, dass sie so gut wie nie gemacht wurde (vorher habe ich hier "nie gemacht" gesagt, aber dann habe ich MartianInvaders Kommentar gelesen , der auf HyperRogue zeigt ).

Was die Implementierung angeht, sollte es recht einfach sein, dies mit den heutigen 3D - Architekturen zu implementieren, da eine Poincaré - Disc - Ansicht erstellt werden kann, indem alles auf die Oberfläche eines Hyperboloids gelegt und eine perspektivische Projektion durchgeführt wird (siehe Bezug zum hyperboloiden Modell ).

Bau der Poincare-Scheibe

Zum Schluss noch eine Sache, falls Sie darüber nachdenken, ein gitterbasiertes Weltraumspiel zu machen und in drei Dimensionen zu gehen, in der Hoffnung, dass die Dinge dort rosiger aussehen könnten ... geben Sie lieber auf. Sie brauchen nicht nur ein gewöhnliches konvexes Polyeder mit 14 nicht existierenden Flächen , die einzige Möglichkeit, den euklidischen 3D-Raum mit gewöhnlichen konvexen Polyedern zu tessellieren, sind Würfel. Booooring. Im hyperbolischen Raum kann man durch Tessellieren mit Dodekaedern (dh 12-seitigen Polyedern; das sind fast 14, oder?) Zumindest etwas Unbestimmtes wie das Analogon eines Hex-Gitters erreichen , aber jetzt bist du im absoluten Brainfuck-Land und hast es noch nicht das Gegenstück zu einer achteckigen Kachelung:

Hyperbolische orthogonale dodekaedrische Wabe

Schön wie die Hölle? Oh mein Gott, ja! Würde ich unermesslich in Panik geraten, wenn außerirdische Raumschiffe nach mir kämen und ich vernünftig reagieren sollte? Wetten, ich würde es tun? Dies ist wahrscheinlich der Grund, warum die meisten Menschen entweder Würfel oder sechseckige prismatische Stapel verwenden .

kubische Wabe sechseckige prismatische Wabe

Christian
quelle
10
Pro-Tipp: Wenn Sie das Gefühl haben, zum offiziellen Herrscher des Nerdiversums gewählt zu werden, bauen Sie eine Zwergenfestung in einer dodekaedrischen Wabe im hyperbolischen Raum. Wenn Sie nicht möchten, dass Sie jemals wieder jemand um diesen Titel herausfordert und die Vulkanier landen lässt und ihre Unterwerfung nach Ihrer Regel anbietet, bevor wir überhaupt den Warp-Antrieb erfinden, schreiben Sie ihn in einen entsprechenden Funge-Dialekt ( quadium.net/funge/ spec98.html ).
Christian
3
3D hat ein regelmäßiges Analogon des Hex-Gitters, nämlich das FCC-Gitter , dessen Einheitszelle, das rhombische Dodekaeder , ein katalanischer Körper ist (dh alle Flächen sind identisch und symmetrisch, obwohl nicht alle Ecken gleich sind). Habe allerdings nicht viele Spiele gesehen, die es benutzen.
Ilmari Karonen
1
@TobiasKienzler Trotz allem, was ich in der Antwort gesagt habe, wäre das ziemlich genial. Wenn ein Spiel nicht in der Lage ist, unser Gehirn neu zu verdrahten, um den hyberbolischen 3D-Raum zu erfassen, was ist das dann? :)
Christian
1
@TobiasKienzler Fehlt der 4D Rubik's Cube nicht in dieser Liste? Wie auch immer, Adanaxis klingt fröhlich verrückt. Bei höheren Dimensionen wird Geometrie in höheren Dimensionen überraschend langweilig: en.wikipedia.org/wiki/List_of_regular_polytopes#Tessellations Es verwirrt mich wirklich. Ich würde erwarten, dass es mehr Freiheitsgrade gibt, also mehr Polytope und so. Aber nein. Sogar der hyperbolische Raum mit dieser unendlichen Anzahl von Tessellationen im 2D-Raum geht bei Dimensionen> 5 auf 0 zurück. Der euklidische Raum behält seine kubische Tessellation in allen Dimensionen.
Christian
4
+1 für "Um ein Spiel auf einem Pringle zu rechtfertigen, brauchst du einen verdammt guten Story-Hook."
Captain Redmuff
27

Der Autor von HyperRogue hier.

HyperRogue verwendet tatsächlich eine Tesselation aus Sechsecken und Heptagonen. Aus diesem Grund wurde diese spezielle Tesselation anstelle von nur Achtecken oder Heptagonen gewählt. Beispiel: Hyperbolische Geometrie in Hyperbolic Rogue Grundsätzlich sind die Achtecke zu groß.

Screenshot HyperRogue Nummerierter Screenshot

In diesem Beitrag sind auch einige Konsequenzen der Verwendung von hyperbolischer Geometrie in einem Spiel aufgeführt (was in hyperbolisch funktioniert und in euklidisch nicht funktioniert und umgekehrt).

Und ja, wie Christian vermutet hat, verwendet HyperRogue intern das hyperboloide Modell.

Ich darf Christians Antwort nicht kommentieren, aber es gibt eine Tesselation des 3D-Raums mit 14- seitigen Polyedern: Bitruncated Cubic Honeycomb (warum eigentlich 14 Gesichter?)

Zeno Rogue
quelle
Verdammt, habe erst jetzt deinen Beitrag gesehen. Ja, ich habe die bitrunkierte kubische Wabe übersehen, aber Ilmari Karonen war auch nett genug, um mich darauf hinzuweisen. Wirklich gute Arbeit, die Sie mit HyperRogue BTW geleistet haben. Gibt es eine Chance, dass Sie Ouya-Steuerelemente hinzufügen? :)
Christian
1
Ich war wieder verwirrt. Die bitrunkierte kubische Wabe besteht nicht aus regelmäßigen Polyedern, dh nicht alle Flächen sind gleich. Die erwähnte Wabe Ilmari Karonen besteht aus Dodekaedern, dh 12-seitigen Festkörpern. Deshalb ist sie eine Art Analogon zur hexagonalen Kachelung: Sie funktioniert, hat aber nicht die 14 gewünschten Richtungen (sechs "gerade" Richtungen) für jede Seite eines Würfels und acht "diagonale" für jeden Eckpunkt). Die bitrunkierte kubische Wabe ist das Analogon zur flachen achteckigen Kachelung: Sie funktioniert, hat jedoch keinen Vorteil gegenüber einer kubischen Wabe für Spielgitter.
Christian
Ich habe einen Screenshot hinzugefügt, damit Sie die Kacheln verstehen. Vielleicht bin ich es nur, aber ich fand es sehr schwer zu sehen, wie viele Eckpunkte jede Kachel hatte. Also habe ich die Anzahl der Eckpunkte in jede der Kacheln eingefügt (nun ja, eigentlich nicht alle ) und plötzlich wurde das Muster klar: Es überlappt Kreise von Sechsecken mit Heptagonen in der Mitte. Hoffe, es ist in Ordnung, dass ich deine Antwort, @ZenoRogue, durcheinander gebracht habe. Es tut mir leid, wenn ich mit diesen Dingen nur langsam bin und sie sofort verstanden habe.
Christian
Vielen Dank! Was braucht es, um Ouya-Steuerelemente hinzuzufügen? Es gibt bereits einen Android-Port und Joystick-Steuerelemente (für die Pandora-Konsole), sodass Ouya-Steuerelemente leicht hinzuzufügen sein sollten, obwohl es für mich schwierig zu testen ist.
Zeno Rogue
1
Ich denke, wir würden tatsächlich 26 Richtungen benötigen, nicht 14 (6 "reine" Richtungen, 12 Kombinationen von zwei (nicht entgegengesetzten) reinen Richtungen und 8 Kombinationen von drei reinen Richtungen). Die bitrunkierte kubische Wabe verwendet 6 + 8 (entsprechend Flächen und Eckpunkten) und die rhombische 12 (entsprechend Kanten).
Zeno Rogue
9

Grundsätzlich möchten Sie eine monoedrische Tesselation (oder Kacheln), dh eine Abdeckung der gesamten Ebene (unter der Annahme von 2d) mit einer einzigen Form, bei der sich die Kacheln weder überlappen noch Lücken lassen.

Es gibt viele Formen, mit denen dies getan werden kann, aber wenn wir andere Beschränkungen einführen, sollte die Orientierung normalerweise gleich bleiben oder sie sollten einer natürlichen Bewegungsrichtung entsprechen, im Grunde bleiben nur Quadrate und Sechsecke übrig.

Nehmen Sie als Beispiel das Dreieck (das Sie vielleicht aus der Tesselation von 3D-Objekten kennen). Um die Lücken zwischen zwei Dreiecken zu füllen, muss ein weiteres Dreieck eingefügt, aber umgedreht werden. Dies ist offensichtlich ein Ärger, der beim Umgang mit Sprites entstehen kann, da eine nahtlose Verbindung wichtig ist. Auch Dreiecksbewegung ist zum Kotzen.

Das natürlichste, zumindest in Bezug auf die Bewegung, ist das Quadrat, das am häufigsten verwendet wird. Sechsecke sind das zweitbeste und ermöglichen eine direktere Annäherung an eine größere Anzahl von Bewegungsrichtungen, dh nicht über die Ecke, wie dies bei 8-Wege-Bewegungen auf Quadraten der Fall ist. Normalerweise werden sie in taktischeren Spielen eingesetzt, bei denen die Steigerung der Bewegung wichtig ist.

Weitere Informationen finden Sie unter http://euler.slu.edu/escher/index.php/Tessellations_by_Polygons .

Hofbaue
quelle