Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
07 Графический адаптер. Трехмерная графика.docx
Скачиваний:
2
Добавлен:
18.11.2019
Размер:
42.48 Кб
Скачать

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

Слайд 7.

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

В глобальных координатах приложение создает объекты, состоящие из трех-мерных примитивов. В этом же пространстве располагаются источники освеще-ния, а также определяются точка зрения и направление взгляда наблюдателя. Естественно, что наблюдателю видна только часть объектов: любое тело имеет как видимую (обращенную к наблюдателю), так и невидимую (обратную) сто-рону. Кроме того, тела могут полностью или частично перекрывать друг друга. Взаимное расположение объектов относительно друг друга и их видимость для зафиксированного наблюдателя обрабатываются на первой стадии графическо-го конвейера, называемой трансформацией (transformation). На этой стадии выполняются вращение, перемещение и масштабирование объектов, а затем и преобразование из глобального пространства в пространство наблюдения (world-to-viewspace transform), а из него и преобразование в «окно» наблюде-ния (viewspace-to-window transform), включая и проецирование с учетом пер-спективы. Попутно с преобразованием из глобального пространства в про-странство наблюдения (до него или после) происходит удаление невидимых поверхностей, что значительно сокращает объем информации, участвующей в дальнейшей обработке. На следующей стадии конвейера (lighting) определя-ется освещенность (и цвет) каждой точки проекции объектов, обусловленная установленными источниками освещения и свойствами поверхностей объектов. И наконец, на стадии пастеризации (rasterization) формируется растровый об-раз в видеопамяти. На этой стадии на изображения поверхностей наносятся текстуры и выполняется интерполяция интенсивности цвета точек, улучшаю-щая восприятие сформированного изображения. Весь процесс создания растро-вого изображения трехмерных объектов называется рендерингом (rendering). Теперь вспомним о том, что трехмерное изображение хотелось бы «оживить» движением, для чего изображения объектов в новом положении должны сходить с графического конвейера со скоростью хотя бы 15 кадров в секунду (со-временные акселераторы могут строить и 100 кадров в секунду).

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