Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.03;
Скачать: CL | DM;

Вниз

Z-Buffer   Найти похожие ветки 

 
Tugrik   (2002-09-24 11:54) [0]

Люди, обьясните, что такое Z-Buffer, а то часто слышу, а не знаю что это!


 
AL2002 ©   (2002-09-24 13:33) [1]

Может, в геймстроительстве и по другому, но я знаю, что это глубина (Depth).
XYZ — говорит что-то?


 
Sapersky_   (2002-09-24 21:57) [2]

Z-буфер применяется для удаления невидимой геометрии. При рисовании треугольника для каждой точки заносится её Z-значение, и при рисовании последующих треугольников для их точек проверяется, дальше ли они находится или ближе; если ближе, точка рисуется и в Z-буфер заносится новое значение; иначе отбрасывается.
Таким образом обычно рисуются 3D-модели (персонажи); для рисования окр. среды существуют специальные методы отсечения.


 
Digitman ©   (2002-09-25 10:19) [3]

>Tugrik

Иными словами - Z-буфер есть массив, хранящий значения Z-координат точек в пространстве 3D-сцены, перспективная 2D-проекция которой строится и визуализируется на экране.

На огурцах :

пусть есть точка A(X,Y,Z) в 3D-пространстве, которая в рез-те визуализации сцены должна стать точкой A"(X", Y") на плоскости визуализации - видеопамяти, хранящей цветовые значения точек растра размером, скажем, 320 х 200

координаты точек A" расчитываются исходя из координат точек A по законам перспективной проекции :
A"(X", Y") = A"(X/Z, Y/Z)

при этом для всех точек А, лежащих, скажем, на оси Z (пусть это будет ось взгляда, где глаз наблюдателя находится в точке (0,0,0) и направлен в сторону положительных значений оси Z)соответствующие точки A" будут иметь одни и те же координаты - A(0, 0), но, возможно, разные цвета.

но ведь рисовать на экране следует лишь ту точку A", которая соответствует точке А, находящейся ближе к наблюдателю, ибо все прочие точки на этой же оси взгляда попросту невидны наблюдателю - они "загорожены" самой ближней точкой.

сразу возникает вопрос : а как определить, следует ли рисовать очередную расчитанную точку A", если буфер растра не содержит никаких сведений об удаленности данной точки ?

ответ на этот вопрос и содержит Z-буфер :
при принятии такого решения для соответствующих точек A и A" из буфера выбирается соотв.значение Z-координаты B(Z) и
- если B(Z) из буфера меньше чем A(Z), то точка не рисуется
- если иначе, то B(Z)=A(Z) и точка рисуется



Страницы: 1 вся ветка

Текущий архив: 2003.03.03;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.024 c
1-5634
Noname15
2003-02-15 16:08
2003.03.03
DateTimePicker


4-5915
UNLoader
2003-01-13 17:25
2003.03.03
Сервис


14-5831
Zhenka
2003-02-13 15:42
2003.03.03
Помогите с алгоритмом вычисления полинома


1-5637
avch
2003-02-20 13:36
2003.03.03
Создание компонента


1-5495
squab
2003-02-20 18:28
2003.03.03
вопрос по стринговой переменной