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.
grid
level-design
hexagonal-grid
OK klicken
quelle
quelle
Antworten:
Oktogone:
Sechsecke:
Die Lücken in den Achtecken sorgen für eine unattraktive Spielwelt.
Wenn Sie acht Bewegungsrichtungen zulassen möchten, verwenden Sie normalerweise nur Quadrate.
quelle
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?
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 .
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;)
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 ).
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:
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 .
quelle
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ß.
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?)
quelle
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 .
quelle