Я пытаюсь воспроизвести эффект процедурного ландшафта, который я нашел на сайте портфолио / блога несколько дней назад.
Цитируя сайт, террасирование было сгенерировано путем «умножения [конечной высоты] на некоторое значение демпфирования в пределах определенного диапазона высот, чтобы создать красивые особенности каньона».
Мне было интересно, кто-нибудь сможет привести более технический пример или процедуру для этого? За прошедшую неделю я много изучал и изучал процедурные методы и методы рельефа / текстуры, но до сих пор не нашел ничего, что бы подробно объясняло, что такое «зажим», и я начинаю разочаровываться.
mathematics
procedural-generation
Juddily
источник
источник
Ответы:
Я не знаю, что делает их проект, но вы можете применить функцию изменения формы к высоте. Вот пример, который принимает
h
от 0,0 до 1,0 и возвращает новую высоту от 0,0 до 1,0:Это функция, которая выглядит следующим образом при построении графика - ось x является исходной высотой, а ось y - новой высотой:
Я применил это к своему собственному коду и получил это:
Вы можете добавить любую функцию изменения формы или объединить их в цепочку, чтобы получить четкие эффекты. Вы получаете террасы, когда есть плоские участки выхода.
источник
Демпфирование - это физический термин, обозначающий влияние внутри или на колебательную систему, которая уменьшает, ограничивает или предотвращает ее колебания.
Я подозреваю , что ваш источник статьи , возможно, опечатка и означали зажим , который обычно относится к ограничению значения в заданном диапазоне.
Что касается достижения визуального эффекта, вы можете получить что-то похожее, зажимая полосы шума при построении ландшафта, но решение, данное @amitp, более точно соответствует исходному описанию и, вероятно, проще в реализации и настройке.
Третьим вариантом может быть использование методов эрозии. Вот один для создания комбинации скалы и пляжа , опуская часть наклонной земли. Вот еще один, который может разрушить пики в плато .
источник
После очень долгого перерыва я теперь понимаю, как был достигнут эффект, и это невероятно просто. Есть 4 части на этот счет:
Вот процедура для создания эффекта:
(th, конечно, высота ландшафта после применения эффекта Terracing)
источник