Praca z cieniowaniem
Aby zaprojektować niestandardowe efekty cieniowania, można użyć cieniowania opartego na grafach Projektant w programie Visual Studio. Tych cieniowania można używać w grze lub aplikacji opartej na directX.
Programy do cieniowania
Cieniowanie to program komputerowy, który wykonuje obliczenia graficzne — na przykład przekształcenia wierzchołków lub kolorowanie pikseli — i zazwyczaj działa na jednostce przetwarzania grafiki (GPU) zamiast procesora CPU. Ponieważ większość etapów tradycyjnego potoku grafiki funkcji stałej jest teraz wykonywana przez programy cieniujące, można ich użyć do utworzenia potoku specyficznego dla potrzeb aplikacji.
Najbardziej typowymi rodzajami cieniowania są cieniatory wierzchołków, które wykonują obliczenia na wierzchołek i zastępują przekształcenia funkcji stałej i oświetlenia w nieprogramowalnym sprzęcie graficznym i cieniowania pikseli, które wykonują obliczenia na piksel, które określają kolor piksela i zastępują obwód łączenia kolorów funkcji stałej w nieprogramowalnym sprzęcie graficznym. Nowoczesny sprzęt graficzny umożliwił jeszcze więcej rodzajów cieniowania — cieniowania kadłuba, cieniowania domen i cieniowania geometrii na potrzeby obliczeń graficznych oraz cieniowania obliczeniowego na potrzeby obliczeń niegraficznych. Żaden z tych etapów nie jest nawet dostępny w nieprogramowalnym sprzęcie graficznym. Cieniowania zostały pierwotnie utworzone przy użyciu języka przypominającego zestaw, który dostarczał instrukcje dotyczące równoległych danych (SIMD) i zorientowanych na grafikę (dot product). Teraz cieniowania są zwykle tworzone przy użyciu języków wysokiego poziomu, takich jak HLSL (język cieniowania wysokiego poziomu).
Za pomocą narzędzia Shader Projektant można interaktywnie tworzyć cieniowania pikseli zamiast wprowadzać i kompilować kod. W Projektant cieniowania cieniowanie jest definiowane przez kilka węzłów reprezentujących dane i operacje oraz połączenia między węzłami reprezentującymi przepływ wartości danych i wyniki pośrednie za pośrednictwem cieniowania. Korzystając z tego podejścia i podglądu w czasie rzeczywistym w Projektant Shader, można łatwiej wizualizować wykonywanie cieniowania i "odnajdywać" interesujące odmiany cieniowania za pomocą eksperymentowania.
Dokumenty DGSL
Funkcja cieniowania Projektant zapisuje cieniowania w formacie DGSL (Directed Graph Shader Language), który jest formatem XML opartym na języku DGML (Directed Graph Markup Language). Cieniowania DGSL można stosować bezpośrednio do modeli 3D w Edytorze modeli. Jednak zanim będzie można użyć cieniowania DGSL w aplikacji, musisz wyeksportować go do formatu, który rozumie DirectX — na przykład HLSL.
Ponieważ dgSL jest zgodny z DGML, można użyć narzędzi zaprojektowanych do analizowania dokumentów DGML w celu analizowania cieniowania DGSL. Aby uzyskać informacje na temat języka DGML, zobacz Understanding Directed Graph Markup Language (DGML).
Powiązane tematy
Nazwa | opis |
---|---|
Projektant cieniowania | Opisuje sposób używania Projektant cieniowania programu Visual Studio do pracy z cieniowaniami. |
Moduł cieniowania Projektant węzłów | Omówienie rodzajów cieniowania Projektant węzłów, których można użyć do osiągnięcia efektów graficznych. |
Przykłady Projektant cieniowania | Zawiera linki do tematów, które pokazują, jak używać narzędzia Shader Projektant w celu osiągnięcia typowych efektów graficznych. |