Шум OpenSimple

N-мерная функция градиентного шума
Абстрактная композиция в 3D, созданная с помощью алгоритма генерации шума OpenSimplex.

Шум OpenSimplex представляет собой n-мерную (до 4D) градиентную функцию шума , которая была разработана для преодоления проблем, связанных с патентами, связанными с симплексным шумом , а также для избежания визуально значимых направленных артефактов, характерных для шума Перлина .

Алгоритм во многом схож с симплексным шумом, но имеет два основных отличия:

  • В то время как симплексный шум начинается с гиперкубических сот и сжимает их вниз по главной диагонали, чтобы сформировать структуру сетки, [1] шум OpenSimplex вместо этого меняет местами факторы перекоса и обратного перекоса и использует растянутые гиперкубические соты. Растянутые гиперкубические соты становятся симплектическими сотами после подразделения. [2] Это означает, что 2D Simplex и 2D OpenSimplex используют разные ориентации треугольной мозаики , но тогда как 3D Simplex использует тетрагональные двуклиновидные соты , 3D OpenSimplex использует тетраэдрально-октаэдрические соты . [2]
  • Шум OpenSimplex использует больший размер ядра, чем симплексный шум. Результатом является более гладкий вид за счет производительности, поскольку необходимо определить и учесть дополнительные вершины в каждой оценке. [2]

У OpenSimplex есть вариант под названием «SuperSimplex» (или OpenSimplex2S), который визуально более плавный. «OpenSimplex2F» идентичен оригинальному SuperSimplex.

Смотрите также

Ссылки

  1. ^ Кен Перлин, Шумовое оборудование. Заметки курса SIGGRAPH в реальном времени (2001), Олано М., (ред.). (pdf)
  2. ^ abc Spirit of Iron: Simplectic Noise Блог Майкла Пауэлла
  • Запись в блоге, знакомящая с шумом OpenSimplex
    • Текущая реализация автора (OpenSimplex2)
  • Android-библиотека
  • Реализация на языке С
  • Реализация GPU в OpenCL
  • Сильно оптимизированная реализация на C#
  • Библиотека Noise для языка программирования Rust, предоставляющая шум OpenSimplex – не задает начальные значения градиента жестко
  • Реализация Python


Взято с "https://en.wikipedia.org/w/index.php?title=OpenSimplex_noise&oldid=1221687552"