Zobrazení textury (Direct3D 10)
V Direct3D 10 se k prostředkům textury přistupuje pomocí zobrazení, což je mechanismus pro interpretaci hardwaru prostředku v paměti. Zobrazení umožňuje určité fázi kanálu přistupovat pouze k podsourcům, které potřebuje, v reprezentaci požadované aplikací.
Zobrazení podporuje pojem prostředku bez typu. Prostředek bez typu je prostředek vytvořený s konkrétní velikostí, ale ne konkrétním datovým typem. Data se interpretují dynamicky, když jsou svázaná s kanálem.
Následující obrázek znázorňuje příklad vazby 2D pole textury se 6 texturami jako prostředek shaderu vytvořením zobrazení prostředků shaderu. Prostředek se pak řeší jako pole textur. (Poznámka: Dílčí zdroj nelze vázat jako vstup i výstup do kanálu současně.)
texturami
Při použití 2D texturového pole jako cíle vykreslení lze prostředek zobrazit jako pole 2D textur (6 v tomto příkladu) s úrovněmi mipmap (3 v tomto příkladu).
Vytvořte objekt zobrazení pro cíl vykreslení voláním CreateRenderTargetView. Potom zavolejte OMSetRenderTargets a nastavte zobrazení cíle vykreslení na kanál. Vykreslit do cíle vykreslení voláním Draw a pomocí RenderTargetArrayIndex indexovat do správné textury v poli. Podsourc (úroveň mipmap, kombinace indexu pole) můžete použít k vytvoření vazby na libovolné pole podsourců. Takže byste mohli vytvořit vazbu na druhou úroveň mipmap a aktualizovat pouze tuto konkrétní úroveň mipmap, pokud chcete, jako na následujícím obrázku.
Rozdíly mezi Direct3D 9 a Direct3D 10:
- V Režimu Direct3D 10 už nevážete prostředek přímo s kanálem, vytvoříte zobrazení prostředku a pak nastavíte zobrazení na kanál. To umožňuje provádět ověřování a mapování v modulu runtime a ovladač při vytváření zobrazení, což minimalizuje kontrolu typů v době vazby.
Související témata