Sdílet prostřednictvím


Práce se shadery

K návrhu vlastních efektů shaderu můžete použít návrhář shaderu založený na grafech v sadě Visual Studio. Tyto shadery můžete použít ve hře nebo aplikaci založené na DirectX.

Shadery

Shader je počítačový program, který provádí grafické výpočty – například transformace vrcholů nebo barvení pixelů – a obvykle běží na grafické procesorové jednotce (GPU) místo procesoru. Vzhledem k tomu, že většina fází tradičního grafického kanálu s pevnými funkcemi se teď provádí programy shaderu, můžete je použít k vytvoření kanálu, který je specifický pro potřeby vaší aplikace.

Nejběžnějšími druhy shaderů jsou shadery vrcholů, které provádějí výpočty jednotlivých vrcholů a nahrazují transformace pevných funkcí a osvětlení obvodů v neprogramovatelném grafickém hardwaru a shadery pixelů, které provádějí výpočty podle pixelů, které určují barvu pixelu a nahrazují obvody s pevnou funkcí v neprogramovatelném grafickém hardwaru. Moderní grafický hardware umožnil ještě více druhů shaderů – shadery trupu, shadery domény a geometrické shadery pro grafické výpočty a výpočetní shadery pro výpočty bez grafiky. Žádná z těchto fází není ani k dispozici v neprogramovatelném grafickém hardwaru. Shadery byly původně vytvořeny pomocí jazyka podobného sestavení, který poskytoval pokyny pro paralelně (SIMD) a grafické objekty (tečkovaný produkt). Shadery se teď obvykle vytvářejí pomocí jazyků podobných vysoké úrovni, jako je HLSL (High Level Shader Language).

Návrhář shaderu můžete použít k interaktivnímu vytváření pixelových shaderů místo zadáváním a kompilací kódu. V Návrháři shaderu je shader definován počtem uzlů, které představují data a operace, a propojení mezi uzly, které představují tok hodnot dat a meziprodukty prostřednictvím shaderu. Pomocí tohoto přístupu a náhledu v reálném čase v Návrháři shaderu můžete snadněji vizualizovat provádění shaderu a "objevit" zajímavé varianty shaderu prostřednictvím experimentování.

Dokumenty DGSL

Návrhář shaderu ukládá shadery ve formátu DGSL (Directed Graph Shader Language), což je formát XML založený na jazyku DGML (Directed Graph Markup Language). Shadery DGSL můžete použít přímo na 3D modely v Editoru modelů. Než ale budete moct ve své aplikaci použít shader DGSL, musíte ho exportovat do formátu, kterému DirectX rozumí – například HLSL.

Protože DGSL je kompatibilní s DGML, můžete použít nástroje navržené k analýze dokumentů DGML k analýze vašich shaderů DGSL. Informace o DGML naleznete v tématu Understanding Directed Graph Markup Language (DGML).

Titulek Popis
Návrhář shaderů Popisuje, jak používat Návrhář shaderu sady Visual Studio pro práci se shadery.
Uzly Návrháře shaderu Popisuje typy uzlů Návrháře shaderů, které můžete použít k dosažení grafických efektů.
Příklady Návrháře shaderů Obsahuje odkazy na témata, která ukazují, jak pomocí Návrháře shaderu dosáhnout běžných grafických efektů.