Одним из самых простых алгоритмов удаления невидимых граней и поверхностей является метод г-буфера (буфера глубины), где для каждого пиксела, как и в методе трассировки лучей, находится грань, ближайшая к нему вдоль направления проектирования, однако здесь циклы по пикселам и по объектам меняются местами.
for all objects
for all covered pixels compare z
Поставим в соответствие каждому пикселу (л\ у) картинной плоскости, кроме цвета с(х, у), хранящегося в видеопамяти, его расстояние до картинной плоскости вдоль направления проектирования z(x, у) (его глубину).
Массив глубин инициализируется +°°.
Для вывода на картинную плоскость произвольной грани она переводится в растровое представление на картинной плоскости и затем для каждого пиксела этой грани находится его глубина. В случае, если эта глубина меньше значения глубины, хранящегося в г-буфере, пиксел рисуется и его глубина заносится в г-буфер.
Весьма эффективным является совмещение растровой развертки грани с выводом в г-буфер. При этом для вычисления глубины пикселов могут применяться инкрементальные методы, требующие всего нескольких сложений на пиксел.
Грань рисуется последовательно строка за строкой; для нахождения необходимых значений используется линейная интерполяция.
Фактически метод г-буфера осуществляет поразрядную сортировку по х и у, а затем сортировку по г, требуя всего одного сравнения для каждого пиксела каждой грани.
швейные машины: электромеханические швейные машины.
Метод г-буфера работает исключительно в пространстве картинной плоскости и не требует никакой предварительной обработки данных. Порядок, в котором грани выводятся на экран, не играет никакой роли.
Для экономии памяти можно отрисовывать не все изображение сразу, а рисовать по частям. Для этого картинная плоскость разбивается на части (обычно это горизонтальные полосы) и каждая такая часть обрабатывается независимо. Размер памяти под буфер определяется размером наибольшей из этих частей.
Современные графические ускорители несут в себе аппаратную реализацию г-буфера, включая также и аппаратную растеризацию граней вместе с закрашиванием.