यह है एक हार्डवेयर सीमा। टुकड़ा shader प्रोग्राम करने योग्य पाइपलाइन का हिस्सा है, लेकिन लक्ष्य बफ़र (s) के साथ अंतिम रंग मिश्रण इस बिंदु पर व्यापक रूप से उपलब्ध / कमोडिटी हार्डवेयर में प्रोग्राम करने योग्य नहीं है (यह ब्लेंड स्टेट्स के माध्यम से कॉन्फ़िगर करने योग्य है, लेकिन आप मनमाना नहीं लिख सकते हैं कोड जो जीपीयू को अंतर्निर्मित मिश्रण संचालन में बदलता है)।
इसका कारण हार्डवेयर का निर्माण नहीं है, शायद इस तथ्य के साथ कि जीपीयू बड़े पैमाने पर समानांतर है; वे एक समय में कई टुकड़ों को संसाधित करते हैं। उन अंशों में से कुछ अंततः गंतव्य बफ़र्स के भीतर एक-दूसरे के साथ बातचीत कर सकते हैं, लेकिन टुकड़ा प्रसंस्करण की अतुल्यकालिक प्रकृति के कारण यह पता लगाना संभव नहीं है कि टुकड़े को संसाधित करने के बाद और अंतिम रंग कैसे उत्सर्जित किया गया है ... जो जीता हमेशा नियत रूप से नहीं होता है।
सिर्फ इसलिए कि अंतिम फ्रेम में पिक्सेल A पिक्सेल B के पीछे होगा, इसका मतलब यह नहीं है कि पिक्सेल A हमेशा टुकड़ा प्रसंस्करण को पूरा करेगा और B से पहले गंतव्य पर लिखा जाएगा, विशेष रूप से रेंडरिंग के कई फ्रेम में। तो पिक्सेल बी के प्रसंस्करण के दौरान गंतव्य बफर से पढ़ा गया मान हमेशा पिक्सेल ए नहीं होगा - कभी-कभी यह स्पष्ट मान होगा।
इसलिए मुझे संदेह है कि खंड के चरण के दौरान प्रत्यक्ष गंतव्य बफ़र को अस्वीकार करने से शेडर प्रोग्रामर को पैर में खुद को गोली मारने से रोकने के साथ और अधिक करना पड़ता है ताकि ब्लेंड स्टेज को पूरी तरह से बनाने में किसी भी वास्तविक तकनीकी सीमा से संभावित रीडिंग की तुलना में इसे पढ़े जा सके। प्रोग्राम। रीड ऑपरेशंस को कसकर नियंत्रित किया जाता है (उदाहरण के लिए गहराई परीक्षण), GPU यह सुनिश्चित करता है कि रीड वैल्यू के साथ किए गए ऑपरेशन किसी प्रकार का अर्थ बनाते हैं।
उस ने कहा, वहाँ भी एक लागत / लाभ की बात हो सकती है। GPU पाइपलाइन प्रोग्राम के उस पहलू को बनाना चिप डिजाइन को कुछ हद तक जटिल बना देगा, और गंतव्य बफर रीड की आवश्यकता / मांग अन्य सुविधाओं की तुलना में अपेक्षाकृत कम रही है।