Как реализован Perlin-noise во флэш-памяти?

На gamedev.SE мы обнаружили, что flash-реализация Perlin-noise , похоже, сильно отклоняется немного от других реализаций.

Я не нашел никаких деталей реализации в Интернете, но мне было интересно, может ли кто-нибудь сказать, какой алгоритм используется для шума Перлина во флэш-памяти.

Использование bitmapData.perlinNoise (32, 32, 1, 200, false, false, 7, true); генерирует подобные изображения, в которых был изменен только параметр numOctaves ( 1 , 2 , 4 слева направо):

perlin noise in flash

Однако другие реализации шума Перлина выглядят совершенно иначе.Например, изображение из статьи Википедии о Perlin-noise :

Perlin noise as depicted on Wikipedia

Также эта реализация ActionScript Perlin-noise дает совершенно разные результаты, как вы можете видеть на следующих изображениях ( Октавы 1 , 2 и 4 слева направо):

Perlin noise AS3

Что меня больше всего интересует, так это вид шума только с одной октавой . Во флэш-реализации ясно видно, что шум образует что-то вроде отдельных капель.

Важно : шум, создаваемый во флэш-памяти, использует false для параметра фрактальный шум . Если фрактальный шум установлен на истина , результаты на самом деле очень похожи на результаты из Википедии и других реализаций.

Описание параметра выглядит следующим образом:

Логическое значение. Если значение истинно, метод генерирует фрактальный шум; в противном случае это создает турбулентность. Изображение с турбулентностью имеет видимые неоднородности градиента, которые могут лучше приблизить более резкие визуальные эффекты, такие как пламя и океанские волны.

Как мы видим, они говорят о турбулентности , чтобы описать метод, который генерирует шум. Итак, я предполагаю, что вопрос в том, является ли этот вывод, генерируемый вспышкой, все еще шумом Перлина? Или у такого шума есть другое название? И самое главное: где найти реализацию для создания такого шума?

10
задан Community 13 April 2017 в 12:18
поделиться