Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Prostředek je oblast v paměti, ke které má kanál Direct3D přístup. Aby kanál mohl efektivně přistupovat k paměti, musí být data poskytnutá kanálu (například vstupní geometrie, prostředky shaderu, textury atd.) uložena v prostředku. Existují dva typy prostředků, ze kterých jsou odvozeny všechny prostředky Direct3D: vyrovnávací paměť nebo textura. Pro každou fázi kanálu může být aktivní až 128 prostředků.
Každá aplikace obvykle vytvoří mnoho prostředků. Mezi příklady prostředků patří: vyrovnávací paměti vrcholů, vyrovnávací paměť indexu, konstantní vyrovnávací paměť, textury a prostředky shaderu. Existuje několik možností, které určují způsob použití prostředků. Můžete vytvořit prostředky, které jsou silného typu nebo menší; můžete řídit, zda prostředky mají přístup ke čtení i zápisu; Prostředky můžete zpřístupnit pouze pro procesor, GPU nebo obojí. Samozřejmě, že dojde k kompromisu rychlosti a funkčnosti – čím více funkcí povolíte prostředkům, tím méně výkonu byste měli očekávat.
Vzhledem k tomu, že aplikace často používá mnoho textur, Direct3D také zavádí koncept pole textury pro zjednodušení správy textury. Pole textury obsahuje jednu nebo více textur (všechny stejné typy a rozměry), které lze indexovat z aplikace nebo pomocí shaderů. Pole textur umožňují použít jedno rozhraní s více indexy pro přístup k mnoha texturám. Můžete vytvořit tolik polí textur pro správu různých typů textur, kolik potřebujete.
Jakmile vytvoříte prostředky, které bude vaše aplikace používat, připojíte nebo svážete jednotlivé prostředky s fázemi kanálu, které je budou používat. Toho se dosahuje voláním rozhraní API vazby, které přebírá ukazatel na prostředek. Vzhledem k tomu, že více než jedna fáze kanálu může potřebovat přístup ke stejnému prostředku, Direct3D 10 zavádí koncept zobrazení prostředků. Zobrazení identifikuje část prostředku, ke kterému je možné získat přístup. Můžete vytvořit zobrazení m nebo prostředek a svázat je s n fázemi kanálu za předpokladu, že dodržujete pravidla vazby pro sdílený prostředek (modul runtime vygeneruje chyby v době kompilace, pokud ne).
Zobrazení prostředků poskytuje obecný model pro přístup k prostředku (textury, vyrovnávací paměti atd.). Vzhledem k tomu, že pomocí zobrazení můžete modulu runtime sdělit, jaká data mají přístup a jak k němu přistupovat, umožňují zobrazení prostředků vytvořit méně prostředků. To znamená, že můžete vytvořit prostředky pro danou velikost v době kompilace a potom deklarovat datový typ v rámci prostředku, když se prostředek připojí k kanálu. Zobrazení zpřístupňují mnoho nových funkcí pro použití prostředků, jako je možnost čtení hloubky nebo vzorníku v shaderu, generování dynamických map datových krychlí v jednom průchodu a souběžné vykreslování na více řezů svazku.
Další informace o základních typech prostředků, polích textur a vytváření a používání prostředků najdete v těchto dalších tématech:
- typy prostředků
- volba prostředku
- vytváření prostředků vyrovnávací paměti
- vytváření prostředků textury
- kopírování a přístupu k datům prostředků
- struktury paměti a zobrazení
- block compression
- tabulka limitů prostředků
- souřadnicových systémů
- pravidelFloating-Point
- pravidla převodu datových typů
- mapování starších formátů
Související témata
-
Průvodce programováním pro Direct3D 10