Идеальная функция шума должна обладать несколькими важными качествами.
□ Это непрерывная функция, которая создает впечатление случайной.
□ Это воспроизводящаяся функция (будет выдавать всякий раз одно и то же значение при задании одного и того же входного параметра).
Q Функция имеет определенный диапазон выходных значений (обычно [-1, 1] или [0, 1]).
Шум
□ Значения функции не должны формировать какого-либо очевидного регулярного шаблона или периода.
□ Функция не зависит от масштабирования.
□ Это изотропная функция (при статистическом повторении она должна быть инвариантной).
□ Функция может быть определена для 1, 2, 3,4 или больше измерений. Такое определение шума подразумевает создание неровного примитива, который затем можно использовать для наложения видимых случайных элементов на повторяющийся шаблон, а также для моделирования, рендеринга или анимации. Характеристики функции шума позволяют получить с ее помощью весьма интересные эффекты. Алгоритмы для создания функций шума подразумевают компромисс качества и скорости, и приведенные ранее критерии способствуют выбору такого компромисса.
Простую функцию шума (называемую Пичи значение шума) можно создать, присваивая псевдослучайное число из диапазона [-1,1] каждому целому числу на осих(рис. 12.1), а затем плавно интерполируя значения между этими точками (рис. 12.2). Функция является повторяемой, то есть для определенного значения входного параметра все время возвращается одно и то же значение функции.
Рис. 12.2. Непрерывная Ю-функция шума Выбор метода интерполяции между дискретными точками очень важен для этой разновидности функций шума. Линейная интерполяция недостаточно хороша, так как в результате наложения такого шума на изображении появляются де42,1. Определение шума фекты. Для получения плавных переходов обычно используется метод кубичес-;.ісой интерполяции.
Изменяя частоту и амплитуду, можно добиться большого разнообразия функ-ЦИЙ шума (рис. 12.3).