Алгоритм - Учебный центр
Заполните форму ниже! Мы вам перезвоним!

Нажав на кнопку "Отправить", Я даю своё согласие на автоматизированную обработку указанной информации, распространяющейся на осуществление всех действий с ней, включая сбор, передачу по сетям связи общего назначения, накопление, хранение, обновление, изменение, использование, обезличивание, блокирование, уничтожение и обработку посредством внесения в электронную базу данных, систематизации, включения в списки и отчетные формы.


Графический конвейер.

Графический конвейер.

                 Графический конвейер (Graphic Pipeline) — это некоторое программно-аппарат­ное средство, которое преобразует описание объектов в «мире» приложения в матрицу ячеек видеопамяти растрового дисплея. Его задача — создать иллюзию трехмерного изображе­ния.

                В глобальных координатах приложение создает объекты, состоящие из трех­мерных примитивов.

                В этом же пространстве располагаются источники освеще­ния, а также определяется точка зрения и направление взгляда наблюдателя. Естественно, что наблюдателю видна только часть объектов: любое тело имеет как видимую (обращенную к наблюдателю), так и невидимую (обратную) сторо­ну. Кроме того, тела могут перекрывать друг друга, полностью или частично.

                1. Первая стадия графического конвейера - трансформация (Transformation).

                Взаимное расположение объектов относительно друг друга и их видимость за­фиксированным наблюдателем обрабатывается на первой стадии графического конвейера, называемой трансформацией (Transformation).

                На этой стадии вы­полняются вращенияперемещения и масштабирование объектов, а затем и пре­образование из глобального пространства в пространство наблюдения (world-to-viewspace transform), а из него и преобразование в «окно» наблюдения (viewspace-to-window transform), включая и проецирование с учетом перспективы. Попутно с преобразованием из глобального пространства в пространство наблюдения (до него или после) выполняется удаление невидимых поверхностей, что значитель­но сокращает объем информации, участвующей в дальнейшей обработке.

                2. Вторая стадия графического конвейера - освещенность (Lighting).

На сле­дующей стадии конвейера (Lighting) определяется освещенность (и цвет) каждой точки проекции объектов, обусловленной установленными источниками ос­вещения и свойствами поверхностей объектов.

(T&L от англ. Transformation and Lighting - Трансформация и Освещение).

                3. Третья стадия графического конвейера - растериза­ции (Rasterization).

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

Свойства объектов.

1. Движение. 

                Чтобы трехмерное изображение «оживить» движением, изображения объектов в новом положении должны схо­дить с графического конвейера со скоростью хотя бы 15 кадров в секунду (со­временные акселераторы могут строить и 100 кадров в секунду). Это колоссальное ускорение построений обеспечивается применением в графи­ческих картах встроенного специализированного процессора, решающего значи­тельную часть задач графического конвейера. Графическое приложение создает модель, в которой объекты задаются как со­вокупность тел и поверхностей. Тела могут иметь разнообразную форму, описан­ную каким-либо математическим способом.

Проще всего иметь дело с много­гранниками, у которых каждая грань представляет собой часть плоскости, огра­ниченной многоугольником (полигоном). Описание такого тела относительно несложно  оно состоит из упорядоченного списка вершин.

2. Тесселяция (Tesselation). 

                Сложнее дело об­стоит с объектами, имеющими не плоские (криволинейные) поверхности. В этом случае в моделиповерхности описываются сложными нелинейными уравнения­ми, однако для дальнейших построений их использование из-за громадных объе­мов вычислений проблематично. Для упрощения задачи криволинейные поверх­ности аппроксимируются многоугольниками, и, конечно же, чем мельче много­угольники, тем ближе аппроксимация к модели, но и тем более громоздким ста­новится описание объекта, а следовательно, и больше времени требуется на его обработку. Представление криволинейной поверхности совокупностью плоских граней-многоугольников называется тесселяцией (Tesselation). Многоугольники-грани должны быть простыми (не пересекающими себя на манер цифры 8), плоскими и выпуклыми — эти ограничения заметно упрощают их дальнейшую обработку.

3. Оптические свойства. 

                Кроме формы объектов (описания их поверхностей), важное значение имеют их оптические свойства. Проще всего дело обстоит с непрозрачными объекта­ми — все другие объекты, перекрытые ими для взгляда наблюдателя, просто не­видимы. Эти объекты будут перекрывать и лучи от источников освещения, уста­новленных в модели, на пути которых они встречаются. Сложнее дело обстоит с прозрачными и просвечиваемыми объектами. Прозрачность (transparency) объек­тапозволяет видеть и объекты, расположенные за ним, а просвечиваемость (trans-lucency) позволяет проходить через него лучам света от источников. Поверх­ность имеет некоторый цвет, а также характеризуется степенью отражения (она может быть глянцевой или матовой). Для того чтобы получить реалистичное отображение модели, приходится отслеживать прохождение лучей от установ­ленных источников освещения, достигающих глаза воображаемого наблюдателя как при отражении от поверхностей, так и при преломлении при прохождении через прозрачные и просвечиваемые объекты. При этом должны учитываться эффекты перспективы, как оптической (искажение формы), так и атмосферной (имитация дымки или тумана).


Лицензия