Confirmedusers, editor
749
edits
Mirotworez (talk | contribs) (Created page with "Генерация мира") |
(Created page with "{{Navbox/ru}}") Tags: Mobile edit Mobile web edit |
||
(21 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
<languages/> | <languages/>Система генерации ландшафта чрезвычайно сложна и запутана. | ||
«Генерация ландшафта» — это термин, обозначающий все части мира, созданные игрой, которые представляют собой блоки. Это включает, помимо прочего, почву, горы, озера, деревья и руины. | |||
__TOC__ | __TOC__ | ||
== | == Этапы генерации ландшафта == | ||
Следующие шаги являются обзором, в следующем разделе будет более подробное объяснение этих этапов. | |||
# | # генерирование карты шума для различных свойств. | ||
# landforms, | # landforms, они выбираются на основе карты шума форм рельефа. | ||
# rock strata, | # rock strata, это этап, на котором тип горных пород в регионе выбирается частично на основе карты шума геологической провинции. | ||
# caves, | # caves, чанки заполнены пещерами. | ||
# block layers, | # block layers, слои, размещенные поверх текущей земли, например. почва, снег и трава. | ||
# deposits, | # deposits, руды и прочее в размещаются в породе. | ||
# structures, | # structures, добавляет руины, тележки торговцев, сундуки с сокровищами и многое другое. | ||
# ponds, | # ponds, водоемы. | ||
# vegetation and patches, | # vegetation and patches, случайно встречающиеся группами, рогоз, хвощ, цветы. Он также добавляет деревья. | ||
# finalize, | # finalize, это завершает процесс, обрабатывая свет в куске, создавая животных и добавляя снег. | ||
== | == Техническое == | ||
Каждый этап определен в [https://github.com/anegostudios/vssurvivalmod/tree/master/Systems/WorldGen/Standard/ChunkGen Базовый мод выживания]. | |||
=== | === Карты шума === | ||
VS | VS использует три метода генерации шума: взвешенный октавный, Perlin и нормализованный симплексный шум. Каждый ведет себя по-разному. | ||
Всего на этом этапе создается семь [https://github.com/anegostudios/vssurvivalmod/blob/825d8e8e090e6000b27d96a43d57aa1a1d5a82ce/Systems/WorldGen/Standard/ChunkGen/0.GenMaps/GenMaps.cs#L79-L87] шумовых карт. | |||
* | * Климат | ||
* | * Цветок | ||
* | * Куст | ||
* | * Лес | ||
* | * Пляж | ||
* | * Геологическая провинция | ||
* | * Рельеф | ||
Эти карты используются на более поздних этапах для придания ландшафту случайности. | |||
=== | === Рельеф === | ||
Таковы формы, которые принимает земля. Существует множество различных форм рельефа, которые можно генерировать, и некоторые из них используют более одной карты шума, в основном климатическую карту. Свойства каждой формы рельефа определены в игровых ресурсах. Есть несколько необязательных свойств, но все формы рельефа должны указывать: | |||
* | * Октавы | ||
* | * Октавные пороги | ||
* | * Ключевые позиции местности Y | ||
* Terrain Y | * Пороги клавиш Terrain Y | ||
Октавы определяют, насколько пересеченной или гладкой является местность. | |||
=== | === Горные породы === | ||
Горные породы образуются слоями, и эти слои сгруппированы по типу: осадочные, метаморфические и магматические. | |||
Осадочную группу не нужно создавать. Если это так, то осадочные камни залегают выше всех метаморфических и магматических камней. | |||
Метаморфическую группу не обязательно создавать. Если это так, метаморфические камни залегают ниже всех осадочных слоев и выше всех магматических слоев. | |||
Магматическая группа всегда будет генерироваться. Магматические камни всегда начинаются в мантии, в нижней части карты, и тянутся вверх, пока не достигнут метаморфических или осадочных слоев или поверхности. | |||
Некоторые виды камней имеют особые правила нереста. | |||
* | * Базальт, несмотря на то, что он магматический камень, может образовываться над любым слоем, включая осадочные и метаморфические камни. | ||
* | * Галит появляется в подземных куполах значительных размеров. | ||
* | * Мрамор появляется в прожилках в филлите и сланце. | ||
* | * Обсидиан появляется в прожилках базальта. | ||
* | * Свевит встречается только в кратерах, окружающих жилы метеоритного железа. | ||
=== | === Пещеры === | ||
Пещеры | |||
=== | === Слои блоков === | ||
Слои блоков. | |||
=== | === Депозиты === | ||
Депозиты обрабатываются в [https://github.com/anegostudios/vssurvivalmod/blob/master/Systems/WorldGen/Standard/ChunkGen/5.GenDeposits/GenDeposits.cs <code>GenDeposits.cs</code>] в режиме выживания. Код месторождений касается не только руды в горных породах. Процесс добычи руды состоит из многих этапов. | |||
# | # Все активы в <code>worldgen/deposits/</code> загружены и проанализированы. | ||
## | ## Генератор перебирает все депозиты и добавляет их в список. | ||
## | ## Если есть дочерние депозиты, они регистрируются. | ||
# | # Создается карта искажения формы залежи. Это используется при инициализации депозитов. | ||
# | # Генератор перебирает все зарегистрированные депозиты. | ||
## | ## Каждый вариант месторождения инициализируется случайным начальным числом и картой искажения формы месторождения. Этот процесс инициализации одинаков для всех депозитов и используется только для упрощения кода. | ||
## | ## Если вариант месторождения использует карту руды, она создается для него. Каждому виду месторождения соответствует своя рудная карта. | ||
## | ## Если есть какие-либо дочерние месторождения, которые также используют карту руды, она создается для дочернего месторождения. | ||
Это конец того, что делается в <code>GenDeposits</code>. Когда создается новый регион мира, <code>GenDeposits</code> вызывает <code>.OnMapRegionGen</code> для каждого варианта депозита. | |||
# | # Генерация региона начинается с обновления карт вертикального искажения руды для региона. | ||
# | # Каждый вариант месторождения генерирует руду в регионе. | ||
<code>GenDeposits.OnMapRegionGen</code> | <code>GenDeposits.OnMapRegionGen</code> относительно прост, потому что большая часть работы по генерации приходится на каждый вариант. То, что на самом деле происходит, когда вариант генерирует регион, зависит от того, какой генератор руды используется, а их несколько. | ||
=== | === Структуры === | ||
Торговые тележки, руины, вагоны. | |||
=== | === Пруды === | ||
=== | === Растительность и грядки === | ||
{{Navbox/ru}} |