9.2. Наложение проективных текстур

ное наложение текстур в реальном масштабе времени, т.е. обновление вида текстуры от кадра к кадру практически не сказывается на скорости формирования изображения по сравнению с воспроизведением чистой геометрии объектов. Каждая графическая карта в современных ПК оснащается памятью для хранения текстуры, что позволяет разработчикам игровых программ передавать на экране сложную, динамически обновляемую обстановку и создавать полную иллюзию погружения в реальную среду.

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

В приложениях можно использовать не только "заимствованные" текстуры, но и формировать их непосредственно в программе с помощью соответствующих процедур. Особый интерес представляют текстуры, характерные для натуральных материалов,- песк", т^авы и различных минералов. В подобных текстурах можно выделить две составляющие - регулярную и случайную. В большинстве методов генерирования таких текстур используется генератор случайных чисел, выходные данные которого "пропускаются" через фильтр (рис. 9.15). Идеальный генератор случайных чисел формирует белый шум - последовательность некоррелированных в статистическом смысле чисел. Управляя передаточной функцией фильтра, можно сформировать из белого шума последовательность чисел с заданными статистическими характеристиками (дисперсией, функцией корреляции и т.п.) и сформировать с их помощью псевдослучайную текстуру.

Методы обработки случайных чисел используются и для формирования трехмерных текстур. Функция интенсивности T(s, t, г) образца такой текстуры зависит от трех параметров, и ее можно непосредственно ассоциировать с точкой (дг, у, г) трехмерного пространства, что позволяет обойти все сложности процесса наложения двухмерной текстуры на трехмерный объект. От пользователя (программиста, разрабатывающего прикладную программу) требуется только подобрать подходящую трехмерную текстуру с определенными пространственными свойствами. Концептуально работа с трехмерной текстурой напоминает нанесение рельефа на заготовку объемной скульптуры. Подобная технология используется при создании объектов, которые будут выглядеть подобно высеченным из каменной глыбы - мрамора или гранита.


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