glHint(GL_PERSPECTIVE_CORRECTION, GL_NICEST);

Графическая система OpenGL поддерживает и несколько функций тонкой настройки процесса наложения. Например, можно выделить на изображении полосой заданной ширины (п пикселей) границы области, на которую накладывается текстура. В этом случае пользователь увидит на экране нечто, напоминающее мозаику из плиток разных материалов. Для автоматической генерации координат текстуры в OpenGL можно использовать функцию glTexGen( ), которая имеет несколько режимов работы. Один из них позволяет сформировать линейное отражение пространства геометрических координат на пространство координат текстуры. Одно из интересных приложений этого режима- воспроизведение на экране рельефа с наложенной текстурой (скалы, трава и т.п.). Текстура непосредственно проецируется на трехмерную сеть. Другой режим позволяет использовать проекцию текстуры на сферическую поверхность. Очень интересные эффекты можно получить, управляя режимом "привязки" текстуры к координатам объекта или наблюм««еля. Если привязать текстуру к координатам наблюдателя, то при перемещении объекта в поле зрения наблюдателя текстура будет оставаться на месте и у пользователя создастся иллюзия, будто объект "проходит" сквозь текстуру.

Технология работы с текстурами требует очень много памяти, особенно если в изображении используется множество образцов текстур. В подобных приложениях может потребоваться по ходу дела повторно генерировать образцы или загружать из файлов, что, конечно же, отнимает много времени. В OpenGL 1.1 появились объекты текстур (texture objects), благодаря которым в прикладной программе можно определить несколько образцов и сохранять их в памяти, выбирая одну в качестве текущей.

9.2.3. Генерация образцов текстур Одна из наиболее привлекательных особенностей технологии наложения текстур- это возможность воспроизводить в изображении достаточно много деталей, не затрудняя себя необходимостью формировать множество геометрических объектов. Высококлассные графические системы, например Infinite Reality Engine фирмы SGI, способны выполнять трехмер-


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