Почему бы нам не использовать восьмиугольные карты вместо шестиугольных?

42

Я понимаю преимущество шестиугольных плиток над квадратными. Но почему вместо этого не используются восьмиугольники? Я думаю, что они обеспечат лучшее, более естественное движение в восьми направлениях.

Я думал об использовании такой карты в какой-то игре, но я не видел ни одной игры, использующей ее, поэтому мне интересно, пропустил ли я что-то явно ошибочное в ее использовании?

Нажмите Ok
источник
59
Восьмиугольники не черепичны.
jmegaffin
2
Интересно, есть ли какие - либо другие формы , которые плитки , как квадраты и шестиугольники
Azaral
12
@Azaral: Есть только треугольники, квадраты и гексы. Это было доказано.
Николь Болас
9
Это делает меня немного грустным внутри
Azaral
11
Ну, на самом деле есть мозаики с другими правильными многоугольниками, но только в неевклидовых геометриях. Например, вы можете получить обычную мозаику пятиугольника на сфере.
TonioElGringo

Ответы:

69

Octogons:

введите описание изображения здесь

Шестигранники:

введите описание изображения здесь

Пробелы в восьмиугольниках создают непривлекательный игровой мир.

Как правило, если вы хотите разрешить восемь направлений движения, вы просто используете квадраты.

MichaelHouse
источник
43
Альтернативой может быть ваша игра в гиперболической плоскости, где вы можете использовать плитки с октогонами: roguetemple.com/z/hyper.php
MartianInvader
3
@MartianInvader Как интересно!
Нажмите Ok
«Разрывы в октогонах создают непривлекательный игровой мир». Я бы так не сказал, я, конечно, вижу использование такого шаблона для менее заметной мозаики.
API-Beast,
1
Правда, «непривлекательный» - неправильное слово. Я должен сказать, что неоднородная структура создает дополнительную сложность как для конечного пользователя (которому может быть трудно привыкнуть к такой структуре), так и для разработчика, который, вероятно, сочтет его более сложным для кода.
MichaelHouse
4
Восьмиугольный рисунок с зазорами эквивалентен квадратному рисунку без диагонального перемещения, визуально повернутый на 45 градусов! (И если вы заполняете промежутки квадратными плитками, это квадратный узор с диагональным движением, но страннее)
user253751
64

Для того, чтобы подвести итоги и разработать на то , что было сказано в других ответах и в комментарии, треугольники, квадраты и шестиугольники являются только математически возможно регулярных разбиений ака регулярных мозаик из евклидовой плоскости . Так что да, это отстой. Треугольники здесь совершенно бесполезны, квадраты - отстой, потому что вы не можете двигаться по диагонали, не имея несколько громоздкого коэффициента 1.4142135623730950488016887242096980785696718753769480 ... дать или взять; и шестиугольники сосут, потому что вы даже не можете двигаться прямо в обоих направлениях. Не поймите меня неправильно, я все же предпочитаю их квадратам в рамках ограничений дрянной реальности, которые оставила нам математика, и перейдите к Civ5, чтобы наконец перейти к гекс-сеткам. Но все же, если бы это было можно тесселяции с восьмиугольниками, никто никогда не взглянул бы на шестиугольники.

Вы можете сказать: «Ну, мне все равно, есть ли пробелы. Я просто притворяюсь, что их там нет». Вы получите усеченную квадратную плитку, которая называется квадратной плиткой не потому, что есть небольшие квадратные промежутки, а потому что эти восьмиугольники на самом деле являются просто прославленными квадратами с точки зрения плитки плоскости. Эти маленькие квадраты - это то, что осталось от усеченияуглы от квадратов, которые фактически покрывали бы плоскость, и с точки зрения игры, причина не использовать квадраты в первую очередь заключалась в том, чтобы иметь равное расстояние для прямых и диагональных ходов, а этого у вас нет. Диагональные движения должны соединять такое же расстояние между центрами плиток, как и с квадратными плитками. И наоборот, если вы притворяетесь, что в вашем волшебном цифровом пространстве были настоящие дыры, вы, конечно, можете это сделать, но в чем отличие от использования квадратных плиток и создания диагональных перемещений, таких же дорогих, как прямые?

усеченная квадратная черепица

Теперь все было бы не так плохо, если бы были действительно хорошие альтернативы, которые не являются евклидовыми . Часто наша сетка в любом случае находится на какой-то планете, так почему бы не использовать эллиптическую геометрию, то есть поверхность сферы? К сожалению, сферы даже намного, намного хуже, когда дело доходит до регулярных выпадений. Там, где на плоскости вы можете использовать как минимум столько плиток, сколько хотите, на сферах есть пять аранжировок - Платоновых тел. Вот и все. И только два из них не используют треугольники. https://en.wikipedia.org/wiki/Spherical_polyhedra

Тем не менее, гиперболическая плоскость действительно качается, когда дело доходит до тесселяции. Их не просто три, на самом деле существует бесконечное количество регулярных тесселяций, включая восьмиугольные .

восьмиугольная мозаика в гиперболической плоскости

Единственная проблема заключается в том, что гиперболическая плоскость не такая хорошая, как плоская поверхность или сфера, а в основном поверхность Прингла . Вам понадобится один адский сюжетный крюк, чтобы оправдать игру на Pringle;)

гиперболический параболоид

Тем не менее, восьмиугольная плитка настолько элегантная и диск Пуанкаре выглядит настолько удивительным , что я действительно удивлен , что почти никогда не было сделано (ранее я не сказал , что «не был сделан» здесь , но потом я прочитал MartianInvader «s комментарий , указывающий на HyperRogue ).

Что касается реализации, хотя я никогда не делал это сам, было бы довольно просто реализовать это с современными трехмерными архитектурами, поскольку представление диска Пуанкаре можно построить, поместив все на поверхность гиперболоида и выполнив перспективную проекцию (см. Связь с гиперболоидной моделью ).

конструкция диска Пуанкаре

Еще одна вещь, чтобы завершить это, если вы думаете о создании космической игры на основе сетки и переходе к трем измерениям, надеясь, что там все может выглядеть лучше, лучше просто сдаться. Вам нужен не только правильный выпуклый многогранник с 14 гранями, которого не существует , единственный способ тесселяции трехмерного евклидова пространства с правильными выпуклыми многогранниками - это кубики. Booooring. В гиперболическом пространстве вы можете, по крайней мере, получить что-то неопределенно похожее на аналог шестнадцатеричной сетки путем тесселяции с додекаэдрами (то есть с 12-гранными многогранниками; это почти 14, верно?), Но теперь вы находитесь в полной дрянной земле и все еще не получили аналог восьмиугольной плитки:

Гиперболическая ортогональная додекаэдрическая сота

Как чертовски красиво? Боже мой, да! Буду ли я паниковать без всякой меры, если за мной последуют инопланетные космические корабли, и от меня ожидают разумной реакции? Вы держите пари, я бы. Вероятно, это причина того, что большинство людей просто используют кубы или гексагональные призматические стеки .

кубический сот шестиугольные призматические соты

Кристиан
источник
10
Совет от профессионала: если вы чувствуете себя избранным официальным правителем нердиверса, создайте Dwarf Fortress в додекаэдрической соте в гиперболическом пространстве. Если вы не хотите, чтобы кто-либо снова оспаривал вас за этот титул, а также заставил вулканцев приземлиться и предложить свое подчинение под ваше правило еще до того, как мы изобрели диск варпа, напишите это на соответствующем диалекте Funge ( quadium.net/funge/ spec98.html ).
Кристиан
3
3D имеет регулярный аналог шестнадцатеричной сетки, а именно решетку ГЦК , чья элементарная ячейка, ромбический додекаэдр , является каталонским твердым телом (т. Е. Все ее грани идентичны и симметричны, хотя и не все углы). Хотя не видел много игр, использующих его.
Илмари Каронен
1
@TobiasKienzler Несмотря на то, что я сказал в ответе, это было бы здорово. Если игра не способна переосмыслить наш мозг, чтобы постичь трехмерное гиперболическое пространство, то что это? :)
Кристиан
1
@TobiasKienzler Разве куб 4D Рубика отсутствует в этом списке? В любом случае, Аданаксис звучит безумно радостно. Что касается более высоких измерений, геометрия становится удивительно скучной в более высоких измерениях: en.wikipedia.org/wiki/List_of_regular_polytopes#Tessellations Это действительно поражает мой разум. Я ожидал бы, что там будет больше степеней свободы, поэтому больше многогранников и прочего. Но нет. Даже гиперболическое пространство с бесконечным числом тесселяций в 2D-пространстве уменьшается до 0 в измерениях> 5. Евклидово пространство сохраняет свою кубическую тесселяцию во всех измерениях.
Кристиан
4
+1 за «Вам понадобится один адский сюжетный крюк, чтобы оправдать игру на Pringle».
CaptainRedmuff
27

Автор HyperRogue здесь.

HyperRogue фактически использует тесселяцию, состоящую из шестиугольников и семиугольников, вот причина, по которой этот конкретный выбор тесселяции был выбран, а не только восьмиугольники или семиугольники, например: Гиперболическая геометрия в Hyperbolic Rogue По сути, восьмиугольники слишком велики.

Скриншот HyperRogue Пронумерованный скриншот

Также в этом посте перечислены некоторые последствия использования гиперболической геометрии в игре (что работает в гиперболическом, а не в евклидовом и наоборот).

И да, как догадался Кристиан, HyperRogue внутренне использует гиперболоидную модель.

Мне не разрешено комментировать ответ Кристиана, но есть тесселяция трехмерного пространства с многогранниками с 14 гранями : битрированная кубическая сота (в любом случае, почему 14 граней?)

Zeno Rogue
источник
Блин, только сейчас увидел твой пост. Да, я упустил из виду укороченные кубические соты, но Ильмари Каронен также был достаточно мил, чтобы указать мне на это. Действительно хорошая работа, которую вы сделали с HyperRogue BTW. Есть ли шанс, что вы добавите к нему элементы управления Ouya? :)
Кристиан
1
Я снова запутался. Слоистая кубическая сота не состоит из правильных многогранников, т.е. не все грани одинаковы. Сотовый элемент, о котором упоминал Илмари Каронен, состоит из додекаэдров, то есть 12-гранных тел, поэтому он является своего рода аналогом гексагональной плитки: он работает, но у него нет 14 желаемых направлений (шесть «прямых» направлений). для каждой грани куба и восемь «диагональных» для каждой вершины). Битчатая кубическая сота является аналогом плоской восьмиугольной мозаики: она работает, но не имеет никакого преимущества перед кубической сотой для игровых сеток.
Кристиан
Я добавил скриншот, чтобы вы могли разобраться в тайле. Однако, может быть, это только я, но мне было очень трудно даже увидеть, сколько вершин было в каждой плитке. Поэтому я поместил количество вершин в каждую плитку (ну, не все из них на самом деле), и внезапно картина стала ясной: это перекрывающиеся круги шестиугольников с семиугольниками посередине. Надеюсь, это нормально, что я запутался с вашим ответом, @ZenoRogue, и извините, если я просто не спешу с этими вещами, и вы все сразу поняли.
Кристиан
Благодарность! Что нужно для добавления элементов управления Ouya? Уже есть порт Android и элементы управления джойстиком (для консоли Pandora), поэтому элементы управления Ouya должны быть легко добавлены, хотя мне сложно их протестировать.
Зено Роуг
1
Я думаю, что на самом деле нам потребовалось бы 26 направлений, а не 14 (6 «чистых» направлений, 12 комбинаций двух (не противоположных) чистых направлений и 8 комбинаций трех чистых направлений). Сжатый кубический сот использует 6 + 8 (соответствует граням и вершинам), а ромбический - 12 (соответствует ребрам).
Зено Роуг
9

По сути, вам нужно моноэдральное тесселяция (или мозаика), то есть покрытие всей плоскости (в предположении 2d) с одной формой, где плитки не перекрываются и не оставляют зазоров.

Существует множество форм, с помощью которых это можно сделать, но когда мы вводим другие ограничения, обычно ориентация должна оставаться неизменной или они должны соответствовать естественному направлению движения, в основном остаются только квадраты и шестиугольники.

Возьмите треугольник для примера (который вы можете узнать из тесселяции трехмерных объектов). Чтобы заполнить промежутки между двумя треугольниками, нужно вставить еще один треугольник, но перевернуть вверх дном. Это, очевидно, создает трудности при работе со спрайтами, например, поскольку важно бесшовное соединение. Также треугольное движение отстой.

Наиболее естественным, по крайней мере в отношении движения, является квадрат, который оказывается наиболее часто используемым. Шестигранники - следующая лучшая вещь и позволяют более прямой подход к большему количеству направлений движения, то есть не через угловое движение как движение с 8 путями на квадратах. Обычно они используются в более тактических играх, где важно увеличение движения.

В любом случае, если вы хотите прочитать больше, взгляните на http://euler.slu.edu/escher/index.php/Tessellations_by_Polygons .

hhofbaue
источник