Процедурные текстуры - Компьютерная графика и ее аппаратная реализация (обзор видеокарт)

Наверняка вы видели так называемые "демки" (речь идет не о демо-версиях игр, а о своеобразных программах очень маленького размера (до 64 кб), которые способны в течение нескольких минут демонстрировать отличные анимированные трехмерные сцены). В условиях, когда каждый байт на счету, создатели демо-сцен просто не могли включать в ролик настоящие текстуры -- они занимали бы слишком много места. Поэтому они используют процедурные текстуры, то есть текстуры, которые на лету генерируются по хитрым алгоритмам, зачастую фрактальным. Занимают такие текстуры всего ничего -- несколько уравнений и параметров, которые умещаются в десятки байт, а выглядят очень красиво.

У процедурных текстур есть несколько преимуществ перед "классическими". Во-первых, они могут неограниченно масштабироваться в реальном времени. Для них не нужны мип-уровни. Во-вторых, они не занимают в оперативной памяти драгоценного места и "разворачиваются" только непосредственно перед рендером. В-третьих, они легко могут быть трехмерными. Немудрено, что и разработчики компьютерных игр обратили на процедурные текстуры свое внимание. Ведь такие текстуры практически не занимают места на диске. Процедурными текстурами можно имитировать дерево, мрамор, камень, кирпичную кладку, мокрый асфальт, стекло -- словом, любой однородный материал. Процедурные текстуры такого типа создаются по "шумовым" алгоритмам Перлина. До последнего времени рендер процедурных текстур был довольно ресурсоемкой задачей. Но не так давно появились специальные алгоритмы, заточенные под MMX и 3D Now!, которые позволяют накладывать процедурные текстуры с такой же скоростью, что и обычные.

Похожие статьи




Процедурные текстуры - Компьютерная графика и ее аппаратная реализация (обзор видеокарт)

Предыдущая | Следующая