Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры по компьютерной графике.DOC
Скачиваний:
32
Добавлен:
02.05.2014
Размер:
896 Кб
Скачать

19. Метод z-буфера

Основывается на использовании дополнительного массива, буфера в памяти, в котором сохраняются координаты точек Z для каждого пиксела растра. Координата Z соответствует расстоянию точек пространственных объектов до плоскости проецирования. Например, она может быть экранной координатой Z в системе экранных координат (X, Y, Z), если ось Z перпендикулярна плоскости экрана.

Рассмотрим алгоритм рисования объектов по этому методу.

Пусть чем ближе точка в пространстве к плоскости проецирования, тем больше значение Z:

● сначала Z-буфер заполняется минимальными значениями;

● затем начинается вывод всех объектов, причем порядок вывода объектов не имеет значения – для каждого объекта выводятся все его пикселы в любом порядке;

● во время вывода каждого пиксела по его координатам (X, Y) находится текущее значение Z в Z-буфере;

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

Таким образом, после рисования всех пикселов всех объектов растровое изображение будет состоять из пикселов, которые соответствуют точкам объектов с самыми большими значениями координат Z, т.е. видимые точки ближе всех к зрителю.

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

В настоящее время метод Z-буфера используется во многих графических 3d-акселераторах, которые аппаратно реализуют этот метод. Оптимально, если акселератор имеет собственную память для Z-буфера, доступ к которой осуществляется быстрее, чем к оперативной памяти компьютера. Возможности аппаратной реализации используются разработчиками и пользователями компьютерной анимации, позволяя достичь большой скорости прорисовки кадров.

20. Алгоритмы построчного сканирования

Оперируют в пространстве изображения.

  1. Алгоритм построчного сканирования с z-буфером.

Объем памяти для строки буфера кадра 1х1024х3Б для z-буфера 1х1024х20/zбит.

Инициализация:фон для текущей обрабатываемой строки буфера иz min ( -) для строкиz-буфера. Определяется пересечение строк с проекцией наxyс каждого многоугольника,т.е. возникает пара пересечений.

Для каждого пикселя между этими пересечениями (концами пары)

Сравнение с zв буфере.

Если глубина > z-буфера, то точка отрезка видима,занесение в

кадр и корректировка z-буфера в этой позиции.

Для повышения эффективности можно использовать список

активных многоугольников.

2. Интервальный алгоритм построчного сканирования.

x

x

x

В случае протыкания многоугольников друг в друга необходимо вычислять и точки пересечения

z

z

z

x

x

bb

d

Другой интервальный метод – разбиение отрезка пополам

a

c

z

z