Самый быстрый Perlin-Like 3D алгоритм шума?
Прошло уже более 20 лет с тех пор, как Кен Перлин впервые изобрел свой шум. Кому-нибудь удалось создать более быстрый вид генератора трехмерного шума со свойствами, близкими к свойствам Perlin (процедурная, естественная группировка, уменьшенные полосы, обычный размер объекта и т. Д.)?
Я пытаюсь создать процедурный генератор мира, но в настоящее время Перлин просто не занимается им. Я признаю, что моя реализация не самая лучшая, какой она могла бы быть сейчас, но если я все-таки собираюсь ее переписать, мне стало интересно, существует ли лучший алгоритм.
2 ответа
Вы хотите Симплексный шум.
- дешевле в вычислительном отношении
- не основаны на квадратной сетке, поэтому нет очевидных направленных артефактов
- лучше масштабируется до более высоких измерений: O(N^2) против O(2^N) классического Перлина для N измерений
Здесь есть хорошее объяснение. По-видимому, реализация примера Кена Перлина - не самый простой для понимания код.
Год назад мне нужно было fast Perlin
Шум тоже и наконец-то реализовали это.
Java Gaming, которая является 2D в Java, но может быть легко превращена в 3D (и на самом деле на любом другом языке, кроме Java).
В зависимости от ваших потребностей, вы можете просто использовать что-то вроде noise2d*noise1d (или аналогичный прием), вот пример примера трюка (должен быть noise2d*noise1d) в полном программном обеспечении Java.