1 м 1
mb(s,x,y,z) = - S "^Гnoise(2ks,x,y,z). (14.37)
2 к = o 2
Рис. 14.30.0 поведении функции шгЬ()
Размер каждого компонента вдвое меньше предыдущего на каждом уровне детализации, однако его частота (скорость колебаний) вдвое превышает частоту предыдущего компонента. Такая совокупность условий приводит к своего рода самоподобию (self-similarity), с которым мы уже встречались в главе 9. Действительно, при определенных условиях функция turb( ) дает хорошую аппроксимацию к так называемому 1//-шуму (см. раздел «Контроль за спектральной плотностью фрактальной кривой» главы 9), который обнаруживается в различных естественных образованиях. На рис. 14.29, б приведен график функции turb( ), сформированной из шумового поля функции noise( ) с рис. 14.29, а при М= 3. Отчетливо видно увеличение уровня детализации, а сами колебания выглядят мягкими и более похожими на облака. Турбулентность, обеспечиваемая функциями типа turb( ), может использоваться для внесения возмущения в некоторые атрибуты формы или текстуры, чтобы придать им более реалистичный вид, как мы вскоре увидим на примере мрамора.
Мраморная текстура На мраморе видны прожилки из темного и светлого материала, имеющие определенную регулярность, в то же время в узоре видны сильно хаотичные нерегулярности. Вслед за Уаттом и Уаттом [Watt, 209]
14.8. Наложение текстуры на поверхности
89"opengl1_980.html">⇐ Предыдущая| |Следующая ⇒