HLSL Shader Model 6.7 Sürümü Değerli Geliştirmelerle Geliyor

Mete

Member
Microsoft ve ortakları, en son HLSL Shader Model üzerinde yapılan geliştirmeler kararında yayınlanan 6.7 sürümünü duyurdu. Shader Model 6.7, HLSL kullanıcılarından gelen taleplere karşılık olarak doku, quads (dörtlü) ve wave (dalga) gölgelendirici özelliklerini genişletiyor.

Bu sürümdeki çalışmalar devam ediyor ve çabucak hemen kesin olarak kullanıma sunulmuş değil. Ancak uygulama ve güncellemeler DXC Github Deposunda yer alıyor. Ayrıyeten bu güncellemeyle bir arada birfazlaca yenilik sunulacak.

SM 6.7, makul doku süreçlerinin yeteneklerindeki boşlukları dolduran ve topluca Gelişmiş Doku Süreçleri olarak isimlendirilen fazlaca istikametli bir özellik koleksiyonu ekliyor. Bu isteğe bağlı bir özellik olacak.

Geliştiriciler, uzun müddettir örneklenen öğelerin nasıl işlendiği konusunda daha fazla denetim talep ediyor. Bir ortaya getirme süreçleri, örneklenen öğelerin tek tek kanallarını alma yeteneği sunuyor.

Current Sample ve Load süreçleri, ofsetlerinin tamsayı kıymetinde olmasını gerektiriyor. Programcılar, gölgelendirici derleme vaktinden evvel bile istedikleri ofset kıymetlerine karar vermek zorundaydı.

Shader Model 6.7, Sample ve Load ofseti bağımsız değişkenlerini, toplama süreçlerinde olduğu üzere değişken bedeller olacak biçimde özgür bırakıyor.

Evvelce SampleCmp kullanmak isteyenler, verilen doku koordinatları için donanımınız tarafınca belirlenen seviyeyi kullanabiliyordu. Geliştiriciler bunu sınırlayıcı buldu ve algoritmalarına en yeterli biçimde yarar sağlayan MIP seviyesini kullanma maharetini istedi. 6.7 ile istediğiniz MIP düzeyini (sıfır olmasa bile) belirtebileceksiniz.

Shader yaratıcıları, belirtilen örnek indeksleri okumak ve bunlara yazmak için bir UAV fazlacalu örnek doku objesi kullanabilecek. Bunun başka platformlarda faydalı olduğu kanıtlandı ve yakında HLSL’de daha da fazla yetenekle kullanıma sunulacak.

Dört şeritli sonuçları sorgulamanın verimli bir yolu için her vakit bir talep vardı. Wawes (Dalgalar), bir tabirin şeritlerinin rastgele biri yahut tümü için yanlışsız olup olmadığını döndürme yeteneğine sahip.

Quads (Dörtlüler), belli bir tabirin geçerli dörtlüdeki şeritlerin rastgele biri yahut tümü için yanlışsız olup olmadığını belirlemek için verimli sorgular alacak.

Yardımcı şeritler öncesinden wave (dalga) süreçlerine değil, sırf türev hesaplamalarına katkıda bulunurdu. Bu wave süreçlerinden türetilen pahalara yahut denetim akışına bağlı türev süreçlerin tanımsız sonuçlara sahip olduğu manasına geliyordu. Shader Model 6.6 ile eklenen IsHelperLane() sorgusu ile birlikte geliştiriciler, wave op’larının yardımcı şeritlerde nasıl etkileştiği ve davrandığı üzerinde tam denetime sahip olacak. Bu denetim, türev süreçlerinin wave süreçlerinin varlığında muteber bir biçimde kullanılmasına müsaade verecek.