Как я hexcrawl делал 3, "Пустыня" - часть 2, где я размышляю на тему рельефа и типов поверхности


Продолжим, раз уж это кому-то интересно. Если честно, мне и самом любопытно описывать ход своей работы. Как вы помните, это скорее отчет. А потому, я рассказываю примерно так и в той последовательности, как я этим занимался. Кроме того, я буду иногда рассказывать о некоторых технических деталях.


Итак, следующим этапом, который было необходимо сделать, это определить типы поверхности. А это было неразрывно связанно непосредственно с картой. К примеру, для меня было совершенно очевидно, что mapgen мне не подойдет. Он отлично справляется с островами, но совершенно не подходит для генерации материковой поверхности. Тем более пустыни. Изначально я хотел просто воспользоваться tiled, выбрав несколько типов поверхности, довольно близких, и случайным образом заполнить поверхность. Благо, tiled позволяет при рисовании использовать рандомные тайлы. Продемонстрирую, что я имею ввиду примером.


Итак, подход был определен, осталось составить список типов поверхности. Немного фантазии, немного гугла и википедии и фичиката(все таки 100500 видов мне явно было не нужно). И вот, что у нас получилось:
1. Каньон
2. Плато
3. Высокогорье – Снег
4. Горная местность- тундра
5. Горная местность — каменистая
6. Скалистая местность
7. Холмистая местность
8. Песчаная местность
9. Оазис
10. Глинистые — на низкогорьях, сложенных соленосными мергелями и глинами,
11. Каменистые — на низкогорьях и мелкосопочниках;
12. Руины
В общем, составляя этот список, я пришел к выводу, что несмотря на мое желание сделать банальный рандом, здесь начинает вырисовываться система.
А именно, градации высоты, и уже подтипы внутри. А именно, я выделил 6 уровней высоты:
1) Высокогорье(заснеженные и нет)
2) Горы, плато, скалы
3) Низкогорье(холмы) – глинистая, каменистая и, как ни странно – лес. Вероятно хвойный. Такой странный для пустыни элемент родился из идее, что снежные вершины высокогорья обеспечивают влагой ближайшую округу возле себя. Такой себе своеобразный «оазис». Причем, туда логично лягут горцы(воины, рудокопы и кузнецы. Вы ведь помните, что мы отчасти, делаем игру в стиле Конана?)
4) «Степь» пустыни – песок, глинистая земля, мертвый лес. Именно на этом уровне начинают появляться оазисы(питающиеся подземными источниками)
5) Каньены, овраги, впадины. Здесь плотность оазисов еще выше.
6) Последний вариант пришел в голову между делом. Это некая глубокая впадина. Если угодно – пропасть или глубокое ущелье. Это территория — почти под землей! Из-за этого там обычно царит полумрак, там довольно прохладно и влажно! Таких участков будет не слишком много, и там будут располагаться некоторые города. В частности самый большой город пустыни, так называемое – подземное царство.
В общем и целом, концепция типов поверхности сформировалась. И я снова вспомнил о mapgen. Ведь там была похожая система. В общем не буду вас мучать техническими подробностями. Но все это заставило меня отвлечься от основного процесса на день, и детально изучить генератор островов внутри. Я понял, что там отличный алгоритм генерации контура острова, который вполне подойдет и для материков. Алгоритм генерации ландшафта, конечно, совершенно не подходит. Но ведь можно воспользоваться тем же perlin noise. В общем все это меня немного отвлекло, и дало новую пищу для размышлений. В частности, я уже не был уверен, что хочу использовать банальный рандом.
Еще один вечер ушел на попытки определить стилистку карты, которую я хочу получить. Но я понял, что начинаю зарываться в детали, и это тормозит работу. Надо было останавливаться, откладывать такую детализацию и работу над контентом карты на потом.
И тогда я остановился, на довольно неожиданном для себя варианте. Бесплатный контент из Battle of Wesnoth. Это было вчера. А сегодня я начал с ним экспериментировать. Вот что у меня получилось:


В целом, я понял следующее. Писать генератор пока не нужно, tiled прекрасно справляется с задачей редактора hexcrawl. Так же, пытаться применить все свои задуманные типы поверхности тоже не стоит. Для начала надо остановится на том, для чего у меня есть готовый контент. Можно еще чуть-чуть поработать с вариантами рисования рельефа, и то, скорее всего не стоит.
Итак, на данный момент у меня есть, как минимум:
1. Скалистое высокогорье
2. Снежное высокогорье
3. Горная местность
4. Горная местность с травой
5. Для низкогорья у меня есть песчаные, глиняные и каменистые холмы
6. Песок, глинистая поверхность, каменистая поверхность и каменистая поверхность с травой
7. Есть песочные впадины(можно использовать для каньенов)
8. Есть глубокие впадины
9. Есть глубокие впадины с магмой и просто магма(а почему нет?)
Отдельно есть оазисы, растительность, в том числе тропическая и пустынная. Есть забавные грибочки, которые вероятно могут хорошо прижиться во впадинах. Есть куча камней, обелисков, руин и прочих сооружения для обозначения населенных пунктов, замков и прочей мелочи. И отличный инструмент для рисования всем этим разнообразием! Более чем достаточно, для продолжение работы.

Итак, следующий пункт по плану у меня – подборка визуальных референсов, артоф, фотографий. То бы окончательно сформировать виджен пустыни и разных ее участков. Мне всегда проще работать имея перед глазами картинки «для настрояния».
А потом можно будет приступать к тому, что бы оживить нашу пустыню хищникам, монстрами, жителями и историями. На самом деле куча мыслей по этому поводу у меня уже есть, но я пока не спешу об этом писать. Потому что просто банально не дошел до этого пункта. Кроме того ознакомится с порекомендованным материалом стоит :)

6 комментариев

avatar
А вот результаты некоторых моих экспериментов :)
avatar
А это примеру генерации формы материков и островов, с разными параметрами.
Довольно детальный

Чуть менее детальный

Еще менее детальный. Помним, что мы это делаем на хекскраулера, и нам там детализация на определенном уровне скорее минус, чем плюс.

А вот целый архипелаг, рад прикола.
avatar
Офигенно! Хочу сделать подобное для будущих компаний!
Надо будет подробнее изучить твои записи, Джек)
avatar
О, да это же Battle of Wesnoth! Тоже люблю его гексовый редактор!:)
avatar
Отличный отчет. Я правильно понимаю, в tiled можно вставлять свой контент? Просто я пока что вообще им не пользовался, не было необходимости в детальной карте.
Маленькое уточнение, климат рядом с горой обычно зависит от ветров в данном регионе. Склоны обращенные к морю будут более влажными (за счет того, что облака будут застревать над ними), а обращенные к континенту более сухими (вплоть до того, что будут такой же частью пустыни).

Если интересно, тут чуть подробнее.
avatar
Отличный отчет. Я правильно понимаю, в tiled можно вставлять свой контент?
Да, все верно. Собственно это редактор сделанный для gamedev-а, тайловых карт :) Изобметрических, хексагональных, прямоугольных, в общем основанных на тайлах :)
Если интересно, тут чуть подробнее.
Да, интересно. Спасибо!
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.