Z-बफर जिसे डेप्थ-बफर के नाम से भी जाना जाता है, छिपी हुई सतहों का पता लगाने की एक विधि है।
छिपी हुई सतह का पता लगाना
किसी भी चित्र में जिनमें ऑब्जेक्ट और सतहें पारदर्शी होती हैं। इस मामले में, अन्य ऑब्जेक्ट्स के पीछे के ऑब्जेक्ट्स छिपे होते हैं। छवि के उचित दृश्य के लिए, इन छिपी हुई सतहों को हटाना आवश्यक है। इस पहचान को छिपी हुई सतह समस्या कहा जाता है।
Z-बफर में, हम Z-अक्ष पर गहराई के रूप में सतहों की तुलना करेंगे।
एल्गोरिदम
चरण 1: सभी पिक्सल की गहराई को अधिकतम आरंभ करें। d(i,j) = अनंत
चरण 2: सभी पिक्सल के लिए रंग आरंभ करें। c(i,j) = बैकग्राउंड-रंग
चरण 3: बहुभुज प्रक्षेपण में प्रत्येक पिक्सल के लिए करें,
चरण 3.1: प्रक्षेपण के (i,j) पिक्सल की गहराई z ज्ञात करें।
चरण 3.2: यदि z < d(i,j) तो करें
चरण 3.2.1: d(i,j) = z और c(i,j) = बहुभुज का रंग।
इस विधि का उपयोग करके पिक्सल दर पिक्सल, हम प्लेन के प्रत्येक पिक्सल की गहराई ज्ञात करेंगे। सबसे छोटी सतह बफर के रंग को निर्धारित करती है। आमतौर पर, सभी Z मान [0,1] रेंज के करीब होते हैं।
z=0, बैक क्लिपिंग प्लेन और z=1, फ्रंट क्लिपिंग प्लेन।
Z-बफर के कुछ महत्वपूर्ण बिंदु
Z-बफर विधि लागू करने के लिए बहुभुजों (प्लेन्स) की प्रारंभिक सॉर्टिंग आवश्यक नहीं है।
Z-बफर बड़ी संख्या में प्लेन्स होने पर भी तेज़ परिणाम प्रदान करता है।
Z-बफर विधि में ऑब्जेक्ट तुलना आवश्यक नहीं है।
गैर-बहुभुज छिपे हुए ऑब्जेक्ट्स का भी इस विधि से पता लगाया जा सकता है।
स्टोर करने और हल करने के लिए कोई अतिरिक्त डेटा संरचना आवश्यक नहीं है।
प्रक्रिया को तेज़ करने के लिए हार्डवेयर कार्यान्वयन संभव है और ग्राफिक वर्कस्टेशन में सक्रिय रूप से उपयोग किया जाता है।
यह विधि केवल तभी लागू होती है जब विचाराधीन ऑब्जेक्ट्स अपारदर्शी हों यानी पारदर्शी ऑब्जेक्ट्स त्रुटि दे सकते हैं।
छिपी हुई सतह का चित्रण समय लेने वाली प्रक्रिया हो सकती है।