Какие углы и соотношения длинная сторона / короткая сторона дают наиболее эстетически привлекательные и графически правильные изометрические (изогнутые и плоской стороной вверх) гексы, которые дополнительно визуализируются в целые размеры пикселей для нескольких размеров при визуализации?
game-design
graphics
tiles
isometric
hexagonal-grid
Виллихам Тотланд
источник
источник
Ответы:
Так как вы представляете hexmap через изометрический вид, который меняет положение вещей.
Вот традиционная версия с горизонтальными гексами, которые эффективно сжимаются по вертикальной оси, чтобы создать псевдоизометрический вид.
Это использует другой подход с гексами, которые вращаются, чтобы не показывать вертикальные или горизонтальные линии.
Любой стиль может работать, зависит только от того, что вы хотите сделать, основные направления, по которым игроки будут перемещаться по миру, и насколько вы хотите избежать зигзагообразных движений.
источник
Под «плоской стороной вверх» я предполагаю, что вы имеете в виду «горизонтальную плоскую сторону» (так как «вверх» может означать либо сам край, направленный вверх, либо «обращенный вверх», то есть его нормальные точки вверх).
Я экспериментировал с обеими ориентациями для игры, которую я разработал в колледже. Лично я нашел "плоские боковые" шестиугольники более приятными для глаз. Я мог бы быть в меньшинстве здесь, но я верю, что Civilization V использует ту же ориентацию, поэтому я определенно не одинок. Если вы не намерены использовать одну ориентацию над другой, то я предлагаю вам поэкспериментировать с обеими. Поскольку большинство онлайн-ресурсов, которые я нашел в отношении шестигранных сеток, используют «горизонтальную горизонтальную» ориентацию, многие уравнения, с которыми вы сталкиваетесь, могут потребовать корректировки; этот сайт должен помочь.
Я построил свой проект с независимой от разрешения структурой пользовательского интерфейса, которая автоматически выполняла привязку пикселей устройства, поэтому я не тратил много времени на настройку углов и соотношений. Я полагаю, что каждый из моих гексов имел ограничивающий прямоугольник из 96 независимых от устройства пикселей в квадрате (96 пикселей устройства на стандартном дисплее с разрешением 96 точек на дюйм при масштабе = 1,0). Вы должны быть в состоянии извлечь остальное из скриншота :).
источник
Они для плоской стороны горизонтальной. Терминология, которую я использую, взята из мысли Амита на странице гридов, с дополнительным языком «узкая длина стороны», означающим длину изогнутых не горизонтальных сторон.
http://www-cs-students.stanford.edu/~amitp/game-programming/grids/hex-grid-metrics-labeled.png
равносторонний (проекция 0 градусов):
"высота" = L√3
"широкая ширина" = L
"узкая ширина" = L√3
длина узкой стороны = L
45 градусов проекция:
"высота" = L
"широкая ширина" = L
"узкая ширина "= 2 * √ (3/8) L
длина узкой стороны = √ (2) L
проекция 60 градусов:
" высота "= (3/2) L
" широкая ширина "= L
" ширина узкая "= 2 * √ ( 3/4) L
длина узкой стороны = √ (13/16) L
Я рассчитал их вручную, поэтому, пожалуйста, проверьте мою работу.
источник