Depth Buffer Algorithm

Depth Buffer Algorithm:-

catmull (1975) द्वारा विकसित depth buffer या Z-Buffer Algorithm यह एक एल्गोरिदम है जो image या स्क्रीन स्पेस में operated होता है, इसे Z-Buffer के रूप में जाना जाता है क्योंकि ऑब्जेक्ट की depth आमतौर पर देखने के plane से देखने की system के Z-axis के साथ मापा जाता है। idea nearest (visible) surface को निर्धारित करने के लिए प्रत्येक surface की  Z-depth का test करना है। एक image की प्रत्येक surface को अलग-अलग process किया जाता है, surface पर एक समय में एक बिंदु एक पिक्सेल के लिए गहराई मूल्यों की तुलना की जाती है और निकटतम (सबसे छोटी z) surface frame buffer में display होने वाले रंग को निर्धारित करती है। यह polygon की surfaces पर बहुत efficiency से लागू होता है। surfaces किसी भी sequence में process किया जा सकता है। method आमतौर पर केवल polygon surface वाले scene पर लागू होती है। polygon surface की depth का पता लगाना आसान है।
यहाँ इस एल्गोरिथम में, two buffer aera का उपयोग किया जाता है। दो बफ़र्स को frame buffer (fresh buffer) और depth buffer के रूप में किया गया है।
depth buffer का उपयोग (x, y) स्थिति के लिए depth values को store करने के लिए किया जाता है, क्योंकि surfaces को processed किया जाता है (0 ≤ गहराई≤ 1)।
फ़्रेम बफ़र का उपयोग प्रत्येक स्थिति (x, y) पर color value के intensity value को store करने के लिए किया जाता है। polygon tables में enlisted प्रत्येक सतह को तब process किया जाता है, एक समय में एक स्कैन लाइन प्रत्येक पिक्सेल स्थिति (x, y) पर depth की गणना करती है। visible surface को खोजने के लिए एल्गोरिथम के step इस प्रकार हैं।

step of Depth Buffer Algorithm:-

Depth Buffer Algorithm
Step-1- बफ़र मान सेट करें - depthbuffer (x, y) = 0)
फ़्रेमबफ़र (x, y)  back color

Step-2 - प्रत्येक पिक्सेल स्थिति के लिए प्रत्येक polygon (एक समय में एक) को process करें।
polygon की प्रत्येक estimate (x, y) पिक्सेल स्थिति के लिए, गहराई z की गणना करें।
IfZ> depthbuffer (x, y)
Compute surface color,

set depthbuffer (x, y)=z,

framebuffer (x, y) - surfacecolor (x, y)
surfaces की depth की गणना प्रत्येक surface के equation से की जाती है। even का equation याद रखें, 
Ax+By+Cz+D=0
Therefore,
z =-(Ax + By D)/C
इस एल्गोरिदम का उपयोग करने के कुछ फायदे हैं, यह process करना आसान है, और हार्डवेयर में लागू होने पर यह गति की समस्या को कम करता है। एल्गोरिथम की सीमा यह है कि इसमें दो बफ़र्स के मानों को store करने के लिए बड़ी मेमोरी की आवश्यकता होती है। जैसा कि यह  images में सभी पिक्सेल को प्रोसेस करता है, यह समय लेने वाली प्रक्रिया भी है। इस एल्गोरिथ्म के साथ अगली समस्या यह है कि यह केवल opaque surfaces के साथ काम कर सकता है, transparent surface के साथ नहीं।

टिप्पणियाँ