D3D12-kód Walk-Throughs
Ez a szakasz a mintaforgatókönyvek kódját tartalmazza. Számos útmutató részletesen ismerteti, hogy milyen kódolásra van szükség az alapszintű mintához való hozzáadáshoz, hogy ne ismétlődjön meg az alapszintű összetevőkód az egyes forgatókönyvek esetében.
A legalapvetőbb összetevőt az Alapszintű Direct3D 12-összetevő létrehozása szakaszban találja. Az alábbi útmutatók a fejlettebb forgatókönyveket ismertetik.
Ebben a szakaszban
Téma | Leírás |
---|---|
D2D D3D11on12 |
A D3D1211on12 minta bemutatja, hogyan jeleníthet meg D2D-tartalmakat D3D12-tartalomon keresztül úgy, hogy erőforrásokat oszt meg egy 11-alapú eszköz és egy 12-alapú eszköz között. |
többmotoros n-karosszéria-szimulációs |
A D3D12nBodyGravity minta bemutatja, hogyan végezhet számítási műveleteket aszinkron módon. A minta több szálat pörget fel egy számítási parancssorsal, és ütemezi a számítási munkát az n-body gravitációs szimulációt végző GPU-n. Minden szál két, pozíció- és sebességadatokkal teli pufferen működik. Minden iteráció esetében a számítási árnyékoló beolvassa az aktuális pozíció- és sebességadatokat az egyik pufferből, és a következő iterációt a másik pufferbe írja. Az iteráció befejezése után a számítási árnyékoló felcseréli, hogy melyik puffer az SRV a pozíció-/sebességadatok olvasásához, és melyik az UAV a pozíció-/sebességfrissítések írásához az egyes pufferek erőforrásállapotának módosításával. |
Predikációs lekérdezések |
A D3D12PredicationQueries minta a DirectX 12 lekérdezési halom és predikáció használatával végzett elzáródási selejtezést mutatja be. Az útmutató a HelloConstBuffer minta predikációs lekérdezések kezeléséhez szükséges további kódot ismerteti. |
dinamikus indexelés HLSL 5.1 |
A D3D12DynamicIndexing minta bemutatja a Shader Model 5.1-ben elérhető új HLSL-funkciókat – különösen a dinamikus indexelést és a kötetlen tömböket –, hogy ugyanazt a hálót többször is renderelje, minden alkalommal, amikor dinamikusan kiválasztott anyaggal jeleníti meg. Dinamikus indexelés esetén az árnyékolók mostantól anélkül indexelhetnek tömbökbe, hogy a fordításkor ismerné az index értékét. Ha kötetlen tömbökkel kombinálják, ez a közvetettség és a rugalmasság egy újabb szintjét növeli a shader-szerzők és a művészeti folyamatok számára. |
közvetett rajz- és GPU-selejtezési |
A D3D12ExecuteIndirect minta bemutatja, hogyan használhat közvetett parancsokat a tartalom rajzolásához. Azt is bemutatja, hogy ezek a parancsok hogyan kezelhetők a GPU-n egy számítási árnyékolóban, mielőtt kibocsátanák őket. |