Метод основывается на использовании дополнительного массива, буфера в памяти, в котором сохраняются координаты
для каждого пиксела растра. Координата
отвечает расстоянию точек пространственных объектов до плоскости проецирования.
Рассмотрим алгоритм рисования объектов согласно этому методу. Пусть, чем ближе точка в пространстве к плоскости проецирования, тем больше значение
. Тогда сначала
-буфер заполняется минимальными значениями. Потом начинается вывод всех объектов. Причем не имеет значение порядок вывода объектов. Для каждого объекта выводятся все его пикселы в любом порядке. Во время вывода каждого пиксела по его координатам
находится текущее значение
в
-буфере. Если рисуемый пиксел имеет большее значение
, чем значение в
-буфере, то это означает, что эта точка ближе к объекту. В этом случае пиксел действительно рисуется, а его
-координата записывается в
-буфер. Таким образом, после рисования всех пикселов всех объектов растровое изображение будет состоять из пикселов, которые соответствуют точкам объектов с самыми большими значениями координат
, то есть видимые точки – ближе всех к нам.
Этот метод прост и эффективен благодаря тому, что не нужно ни сортировать объекты, ни сортировать их точки. При рисовании объектов, которые описываются многогранниками или полигональными сетками, манипуляции со значениями
-буфера легко совместить с выводом пикселов заполнения полигонов плоских граней.
В настоящее время метод
-буфера используется во многих графических 3d- акселераторах, которые аппаратно реализуют этот метод. Наиболее целесообразно, когда акселератор имеет собственную память для
-буфера, доступ к которой осуществляется быстрее, чем к оперативной памяти компьютера. Возможности аппаратной реализации используются разработчиками и пользователями компьютерной анимации, позволяя достичь большой скорости прорисовки кадров.






