Генерация шума (комментарии)
Это сообщение сгенерировано автоматически.
Статья отличная. Достаточно теории и кусков кода.
Все хочу усложнить свою генерацию карты через Voronoi шумами разными) Спасибо за статью.
crol
Фраза "генерацию карты через Voronoi" напомнила:
http://www-cs-students.stanford.edu/~amitp/game-programming/polyg… p-generation/
FordPerfect
Добавь информацию о 'равномерной' генерации точек, полезно для Шум Уорли.
susageP
Подробнее?
Poisson disk, что-ли? Ссылку я дал, пересказать лучше, чем там, у меня вряд-ли получится. Да и некоротко.
Ссылку на эту тему, что-ли, добавить:
http://www.gamedev.ru/code/forum/?id=188895 ?
Конкретно у Уорли пространство разбивалось на кубики, в каждом Пуассоновски генерировались точки (примерно так же, как и для sparse convolution noise). Пустые кубики запрещались.
Или я не понял вопрос?
Andrey
> Достаточно теории и кусков кода.
И ты понимаешь поинт преобразования Фурье ? :)
FordPerfect
> Подробнее?
Если не ошибаюсь вроде jittered grid называется. В отличие от Poisson disk не требует вычисления и хранение точек
susageP
Конкретно jittered grid Уорли в статье ругает за анизотропию:
To evaluate the functions , we must first define how feature points are spread through space. The density and distribution of points will change the character of the basis functions. We want an isotropic distribution of points to avoid artifacts such as an obvious grid-like pattern. This eliminates any regular lattices such as a cubic spacing. Even if the lattice points are jittered, the underlying lattice structure may cause odd patterns.
и делает то, о чём сказано выше (он ещё и сверху количество точек ограничивает).
Впрочем для некоторых целей jittered grid, наверно, вполне подходит.
Упоминание этого в статью можно бы и добавить, да.
Правка:
формула.
Добавил.
мне кажется, имеет смысл для каждого шума добавить приблизительную инфу о его реализации и области применения. например, шум перлина редко реализуют на шейдерах из-за целочисленной арифметики, вместо него чаще используют simplex noise итп.
также имеет смысл указать, что функции рандома, которые ты назвал включёнными в C++, появились только в 11 стандарте. на фурье-преобразовании не подписаны оси. не раскрыто понятие октавы(я бы не понял, какое оно имеет отношение к делу, если бы не знал заранее).
стоит акцентировать большее внимание на самый стандартный способ получения шума с произвольным спектральным распределением как взвешенной суммы шумов с узким спектром. точнее, он у тебя сейчас прямо среди прочих шумов находится, а его, возможно, имеет смысл выделить отдельно.
я сам не спец в этом деле, но если картинка маленькая, то, определённо, нужно задать ей обтекание текстом, а то больно много пустого места.
наконец, картинки лучше попытаться привести к одному стилю и размеру, а то они как-то не слишком равнозначно смотрятся. вообще обрати внимание, чтобы разные шумы были одинаково оформлены, а то сейчас они немного разнородны.
вообще хорошо, мне нравится, как написано.
Suslik
> фурье-шум редко реализуют на шейдерах из-за целочисленной арифметики
С этого места поподробнее ... Свёртка определяется на Z ? :)
FordPerfect
> Фраза "генерацию карты через Voronoi" напомнила:
> http://www-cs-students.stanford.edu/~amitp/game-programming/polyg…
> p-generation/
спасибо за наводку) А то у меня пока ни речек ни логики в расстановке биомов нет, а было бы неплохо.
innuendo
> С этого места поподробнее ...
я какую-то ерунду написал. шум перлина, конечно, имелся в виду.
Suslik
И про октавы - если в тексте есть про Фурье, то типа предполагается, что читатель знает про гармоники ?
Тема в архиве.