Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #34, СЕНТЯБРЬ 2003 г.

ПОЛНОЭКРАННОЕ ВИДЕО БЕЗ ТОРМОЗОВ

Дениc Овсянников

Спецвыпуск Xakep, номер #034, стр. 034-064-3


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

Для того чтобы лучше представить, почему одни графические решения предпочтительнее других, я объясню некоторые основы 3D рендеринга. Проблема делится на 3 основных части: обработка пространства (среда окружения), геометрическая обработка и световое моделирование, генерация пикселей.

ПРОСТРАНСТВО

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

ГЕОМЕТРИЧЕСКАЯ ОБРАБОТКА

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

СВЕТОВОЕ МОДЕЛИРОВАНИЕ

Цвет полигонной вершины и координаты текстуры - важный внутренний параметр, обычно добавляется во время моделирования. Геометрический процессор может изменять значения цвета вершины согласно световой модели. Уровень света окружения может быть любым, включая темный. Качественное световое моделирование просчитывается для каждого из многоугольников, образующих поверхность. От этого напрямую зависит качество наложения текстур.

Назад на стр. 034-064-2  Содержание  Вперед на стр. 034-064-4