Bu ise , bir donanım sınırlaması. Parça gölgelendirici programlanabilir boru hattının bir parçasıdır, ancak hedef tampon (lar) ile son renk karışımı bu noktada yaygın olarak kullanılabilir / emtia donanımında programlanamaz (karışım durumlarıyla yapılandırılabilir, ancak rastgele yazamazsınız) GPU'ların yerleşik karışım işlemlerinin yerini alan kod).
Donanımın bunun için yapılmamasının nedeni muhtemelen GPU'nun büyük ölçüde paralel olması gerçeğiyle ilgilidir; aynı anda birçok parçayı işliyorlar. Bu fragmanlardan bazıları nihai olarak hedef tamponlar içinde birbirleriyle etkileşime girebilir, ancak fragman işlemenin eşzamansız doğası nedeniyle, fragman işleninceye ve son renk yayılıncaya kadar nasıl olacağını bilmek mümkün değildir ... her zaman deterministik olarak olmaz.
A pikselinin son karedeki B pikselinin arkasında olması, A pikselinin her zaman parça işlemeyi tamamlayacağı ve özellikle birden çok oluşturma karesinde B'den önce hedefe yazılacağı anlamına gelmez. Bu nedenle, piksel B'nin işlenmesi sırasında hedef tampondan okunan değer her zaman piksel A olmaz - bazen net değerler olur.
Bu nedenle, fragman aşaması sırasında doğrudan hedef arabellek okumalarına izin verilmemesinin, karıştırma aşamasını tamamen yapmadaki herhangi bir teknik sınırlamadan potansiyel olarak belirsiz olmayan sonuçlar elde ederek gölgelendirici programlayıcısının ayaktan vurmasını engellemekle çok daha fazla ilgisi olduğunu düşünüyorum. programlanabilir. GPU, okuma işlemlerini sıkı bir şekilde kontrol altında tutarak (örneğin derinlik testi), GPU, okuma değeri ile yapılan işlemlerin bir anlam ifade etmesini sağlar.
Bununla birlikte, bir maliyet / fayda olayı da olabilir. GPU boru hattının bu yönünün programlanabilir hale getirilmesi, çip tasarımını biraz karmaşıklaştıracaktır ve hedef tampon okumaları için ihtiyaç / talep, diğer özelliklere kıyasla nispeten düşük olmuştur.