Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
DirectX efekti, HLSL yazılmış ifadeler ve efekt çerçevesine özgü bazı söz dizimleri tarafından ayarlanan bir işlem hattı durumu koleksiyonudur.
Bir efekti derledikten sonra, işlemek için efekt çerçevesi API'lerini kullanın. Efekt işlevselliği, geometriyi dönüştüren köşe gölgelendiricisi ve düz renk çıkışı veren bir piksel gölgelendiricisi kadar basit bir öğeden birden çok geçiş gerektiren, grafik işlem hattının her aşamasını kullanan ve gölgelendirici durumunu ve programlanabilir gölgelendiricilerle ilişkilendirilmeyen işlem hattı durumunu işleyen bir işleme tekniğine kadar değişebilir.
İlk adım, denetlemek istediğiniz durumu bir efektte düzenlemektir. Buna gölgelendirici durumu (köşe, gövde, etki alanı, geometri, piksel ve işlem gölgelendiricileri), gölgelendiriciler tarafından kullanılan doku ve örnekleyici durumu ve diğer programlanamayan işlem hattı durumu dahildir. Bellekte metin dizesi olarak bir efekt oluşturabilirsiniz, ancak genellikle boyut, efekt durumunu bir efekt dosyasında (.fx uzantısıyla biten bir metin dosyası) depolamak için kullanışlı olacak kadar büyür. Bir efekti kullanmak için, bunu derlemeniz (HLSL söz dizimini ve efekt çerçevesi söz dizimini denetlemek için), API çağrıları aracılığıyla efekt durumunu başlatmanız ve işleme API'lerini çağırmak için işleme döngünüzü değiştirmeniz gerekir.
Efekt, belirli bir efektin gerektirdiği tüm işleme durumunu tek bir işleme işlevine (teknik olarak adlandırılır) kapsüller. Geçiş, işleme durumunu içeren bir tekniğin alt kümesidir. Birden çok geçiş işleme efekti uygulamak için bir teknik içinde bir veya daha fazla geçiş uygulayın. Örneğin, bir dizi derinlik/kalıp arabelleğiyle bazı geometrileri işlemek istediğinizi ve ardından bunun üzerine bazı spriteler çizmek istediğinizi varsayalım. İlk geçişte geometri işlemeyi ve ikinci geçişte sprite çizimini uygulayabilirsiniz. Efekti işlemek için her iki geçişi de işleme döngünüzde işlemeniz yeterlidir. Bir efektte istediğiniz sayıda teknik uygulayabilirsiniz. Elbette, teknik sayısı ne kadar fazlaysa, etki için derleme süresi de o kadar fazla olur. Bu işlevden yararlanmanın bir yolu, farklı donanımlarda çalışacak şekilde tasarlanmış tekniklerle efektler oluşturmaktır. Bu, bir uygulamanın algılanan donanım özelliklerine göre performansı düzgün bir şekilde düşürmesine olanak tanır.
Bir grup teknik bir grupta gruplandırılabilir ("fxgroup" söz dizimini kullanır). Teknikler herhangi bir şekilde gruplandırılabilir. Örneğin, malzeme başına bir tane olmak üzere birden çok grup oluşturulabilir; her malzemenin her donanım düzeyi için bir tekniği olabilir; her tekniğin, belirli bir donanımdaki malzemeyi tanımlayan bir dizi geçişi olacaktır.
Bu bölümde
| Konu | Açıklama |
|---|---|
|
Bir Efektte Durumu Düzenleme |
Direct3D 11 ile, belirli işlem hattı aşamaları için etki durumu yapılar tarafından düzenlenir. |
|
Efekt Sistemi Arabirimleri |
Efekt sistemi, etki durumunu yönetmek için çeşitli arabirimler tanımlar. |
| arabirimleri özelleştirme |
ID3DX11EffectVariable, arabirimi ihtiyacınız olan belirli bir arabirim türüne dönüştürmeye yönelik bir dizi yönteme sahiptir. |
| Efektler Arabirimleri ve Sınıfları |
Efektler 11'de sınıfları ve arabirimleri kullanmanın birçok yolu vardır. |
|
Efekti İşleme |
Bir etki, bilgileri depolamak veya bir durum grubu kullanarak işlemek için kullanılabilir. |
|
Efekti Kopyalama |
Bir efektin kopyalanması, efektin hemen hemen aynı ikinci bir kopyasını oluşturur. |
|
Stream Out Söz Dizimi |
Akış çıkışı olan bir geometri gölgelendiricisi belirli bir söz dizimi ile bildirilir. |
|
Efektler 10 ile Efektler 11 Arasındaki Farklar |
Bu konu, Efektler 10 ile Efektler 11 arasındaki farkları gösterir. |
İlgili konular
-
Direct3D 11 için Programlama Kılavuzu