Pull to refresh

Comments 12

Ради интереса попробовал сделать просто шум с отступом. Т.е. граница берега — это, допустим, 0.5, а барьер — градиент 0.5-0.51-0.52 помноженный на другой шум. Ну в принципе тоже работает, хотя качество никакое надо очень аккуратно подходить к настройкам шума и что-то может получиться. Зато сильно проще.
Поигрался немного. Получилось не идеально, но немного похоже. Думаю, можно и лучше, но голова сейчас хреново соображает.
image
А где можно опробовать-то этот генератор?
Если посмотреть на карту реальных островов в начале статьи, то можно заметить что:
1) со стороны океана очень гладкая линия
2) со стороны материка есть пики, похожие на волнорезы-наоборот
3) линия островов не повторяет линию берега
4) линия острова похожа на вязку тугую веревку, которую проложили по контуру.
5) Она не заходит в бухты, не делает изгибов на дельты и заливы, она это все усредняет при чем очень грубо.
6) Расстояние от берега не фиксировано, на внешних углах, они почти вплотную к берегу, на внутренних углах и заливах они очень далеко.
7) Соотношение толщины острова с толщиной дельт рек и самих рек иное. Или реки должны быть толще, или острова тоньше.
Если натренировать нейросеть на реальных картах, то она и не такие особенности заметит, правда нам не расскажет.
Интересно, будет ли она рисовать красивые и реалистичные карты.
Барьерные острова — это плоские или глыбистые участки песка, формируемые волнами и прибоем параллельно побережью материка

На этом примере показана потенциальная проблема с барьерными островами:
image
Здесь барьерный остров был создан внутри залива. Это нелогично (кроме того, приводит к пересечению названий). Чтобы избежать этого, я могу использовать свою логику распознавания заливов, и пропускать эти участки береговой линии.

Не нужно распознавать — нужно просто гнать волну от океана, и наткнувшись на мелкое место формировать барьерный остров. Ну а мелкие места должны быть в определённом радиусе вокруг суши, и тогда заливы, автоматом будут мелкими и формировать барьерные острова на входе.
Поздравляю, вы получили остров в бухте. Вам кажется это не логично, но это вполне геологично. Помимо барьерных островов, в природе существует масса формаций, и когда мы научимся их все успешно генерировать — можно будет задуматься и о настоящей Матрице. А пока настоящий геолог, как мы видим из этой статьи, успешно отличит виртуальную карту от реальной )

остров в бухте

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

А про остров на фото — да, это скорее скалы. Я не знаю точной причины их возникновния, так как в 8 классе, простудившись в походе и болея на природе, окончательно решил идти в компьютерщики, а не геологи. Но в юго-восточной Азии их очень много. Многие выглядят еще круче — между Пхукетом и Пхи-Пхи в океане можно увидеть острова, похожие на ошибку генератора в Майнкрафте, или на башни с верхушками, заросшими лесом. Мне они, когда я их увидел, напомнили скалу зеленых драконов из замка лесных эльфов в третьих Героях

В целом надо спрашивать — что мы хотим симулировать алгоритмом? Если отмели, то данный остров-скала не годится как сэмпл. Если реальную береговую линию с заливами — то вообще причин появления островов несколько больше. Поэтому Земля такая и красивая местами.
Начните с вузовского учебника по общей геологии.
Сейчас проще всего ищется Короновский: я его не читал, слишком новый (ничего ужасного, просто я слишком рано родился. А так более новые учебники обычно полезнее, поскольку учитывают современные им достижения науки) — но на очень беглый взгляд вроде бы вполне себе ничего.
Например, вот PDF.
Sign up to leave a comment.

Articles