Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Beskriver funktionerna i maskinvarufunktionerna 11_0 till 12_1.
För att hantera mångfalden av grafikkort i nya och befintliga datorer introducerade Microsoft Direct3D 11 begreppet funktionsnivåer. Varje grafikkort implementerar en viss nivå av Microsoft DirectX-funktioner (DX) beroende på vilka grafikprocessorer (GPU:er) som är installerade. En funktionsnivå är en väldefinierad uppsättning GPU-funktioner. Funktionsnivån 11_0 implementerar till exempel de funktioner som implementerades i Direct3D 11.
Nu när du skapar en enhet kan du försöka skapa en enhet för den funktionsnivå som du vill begära. Om enheten skapas finns den funktionsnivån, om inte, maskinvaran stöder inte den funktionsnivån. Du kan antingen försöka återskapa en enhet på en lägre funktionsnivå eller så kan du välja att avsluta programmet.
De grundläggande egenskaperna för funktionsnivåer är:
- Alla Direct3D 12-drivrutiner är funktionsnivå 11_0 eller bättre.
- En GPU som gör att en enhet kan skapas uppfyller eller överskrider funktionaliteten på den funktionsnivån.
- En funktionsnivå innehåller alltid funktionerna i tidigare eller lägre funktionsnivåer.
- En funktionsnivå innebär inte prestanda, bara funktioner. Prestanda är beroende av maskinvaruimplementering.
- En funktionsnivå väljs när du anropar D3D12CreateDevice.
- Om du vill ha mer detaljerad information om funktioner som stöds (särskilt de som är markerade Valfri i tabellen nedan, vilket innebär att maskinvaran kan stödja funktionen men inte krävs för att) anropa CheckFeatureSupport.
Information om begränsningar som skapar enheter av icke-maskinvarutyp på vissa funktionsnivåer finns i Begränsningar som skapar WARP- och referensenheter. Mer information om introduktionen av funktionsnivåer finns i Direct3D 11-dokumentationen om Direct3D-funktionsnivåer.
Numreringssystem
Maskinvarufunktionsnivåer är inte samma som API-versioner. Det finns till exempel ett D3D11.3-API, men det finns ingen maskinvarufunktionsnivå på 11_3. Funktionsnivåer definieras i D3D_FEATURE_LEVEL uppräkning.
Det finns tre distinkta numreringssystem:
- Direct3D-versioner använder en period; till exempel Direct3D 12.0.
- Skuggningsmodeller använder en punkt; till exempel skuggningsmodell 5.1.
- Funktionsnivåer använder ett understreck; till exempel funktionsnivå 12_0.
Stöd för funktionsnivå
Följande funktioner är tillgängliga för varje Direct3D-funktionsnivå.
Rubrikerna på den översta raden är Direct3D-funktionsnivåer. Rubrikerna i den vänstra kolumnen är funktioner.
Funktion \ funktionsnivå | 12_1⁰ | 12_0⁰ | 11_1¹ | 11_0 |
---|---|---|---|---|
Skuggningsmodell | 6.0 | 6.0 | 6.0/5.1² | 6.0/5.1² |
resursbindningsnivå | Nivå 2³ | Nivå 2³ | Nivå 1³ | Nivå 1³ |
tillagda resurser | Nivå 2³ | Nivå 2³ | Valfri | Valfri |
konservativ rastrering | Nivå 1³ | Valfri | Valfri | Nej |
Rasterizer Ordnade vyer | Ja | Valfri | Valfri | Nej |
minsta/högsta filter | Ja | Ja | Valfri | Nej |
Mappa standardbuffert | Valfri | Valfri | Valfri | Valfri |
angivet stencilreferensvärde för skuggning | Valfri | Valfri | Valfri | Nej |
osorterad åtkomstvy läses in | 18 format, fler valfria | 18 format, fler valfria | 3 format, mer valfritt | 3 format, mer valfritt |
Geometry Shader | Ja | Ja | Ja | Ja |
Stream Out | Ja | Ja | Ja | Ja |
DirectCompute/Compute Shader | Ja | Ja | Ja | Ja |
Hull och Domain Shaders | Ja | Ja | Ja | Ja |
resursmatriser för struktur | Ja | Ja | Ja | Ja |
Cubemap-resursmatriser | Ja | Ja | Ja | Ja |
BC1 till BC7 Compression | Ja | Ja | Ja | Ja |
Alpha-to-coverage- | Ja | Ja | Ja | Ja |
Logic Operations (utdatasammanslagning) | Ja | Ja | Ja | Valfri |
Måloberoende rastrering | Ja | Ja | Ja | Nej |
Flera återgivningsmål (MRT) med ForcedSampleCount 1 | Ja | Ja | Ja | Valfri |
Maximalt antal tvångsexempel för endast UAV-återgivning | 16 | 16 | 16 | 8 |
Maximal strukturdimension | 16384 | 16384 | 16384 | 16384 |
Max kubkartans dimension | 16384 | 16384 | 16384 | 16384 |
Maximal volymstorlek | 2048 | 2048 | 2048 | 2048 |
Maximal texturrepetition | 16384 | 16384 | 16384 | 16384 |
Max Anisotropi | 16 | 16 | 16 | 16 |
Maximalt primitivt antal | 2^32 – 1 | 2^32 – 1 | 2^32 – 1 | 2^32 – 1 |
Maximalt brytpunktsindex | 2^32 – 1 | 2^32 – 1 | 2^32 – 1 | 2^32 – 1 |
Maximalt antal indatafack | 32 | 32 | 32 | 32 |
Mål för samtidig återgivning | 8 | 8 | 8 | 8 |
Ocklusionsfrågor | Ja | Ja | Ja | Ja |
Separat alfablandning | Ja | Ja | Ja | Ja |
Spegel en gång | Ja | Ja | Ja | Ja |
Överlappande hörnelement | Ja | Ja | Ja | Ja |
Oberoende skrivmasker | Ja | Ja | Ja | Ja |
Instancing | Ja | Ja | Ja | Ja |
- ⁰ Kräver Direct3D 11.3 eller Direct3D 12-körning.
- ¹ Kräver Direct3D 11.1-körningen.
- ² Shader model 5.0 kan också stödja skuggningar med dubbel precision, utökade skuggningar med dubbel precision, SAD4 skuggningsinstruktion och skuggning med partiell precision. Om du vill fastställa alternativen för skuggningsmodellen 5.0 som är tillgängliga anropar du ID3D12Enhet::CheckFeatureSupport. Viss kompatibilitet beror på vilken maskinvara du kör på: Shader model 5.1 stöds endast på maskinvara som stöder DirectX 12-API:et, oavsett vilken funktionsnivå som används. DirectX 11-maskinvara stöder endast upp till skuggningsmodell 5.0. DirectX 12-API:et går bara ned till funktionsnivå 11_0.
- ³ Högre nivåer är valfria.
- Funktionsnivåer 12_0 och 12_1 kräver Direct3D 11.3 eller Direct3D 12-körning.
- Funktionsnivå 11_1 kräver Direct3D 11.1-körning.
- Funktionsnivå 11_0 kräver Direct3D 11.0-körning.
Maskinvarustöd för DXGI-format
Om du vill visa tabeller med DXGI-format och maskinvarufunktioner läser du:
- DXGI-formatstöd för Direct3D-funktionsnivå 12.1 Maskinvaru-
- DXGI-formatstöd för Direct3D-funktionsnivå 12.0 Maskinvaru-
- DXGI-formatstöd för Direct3D-funktionsnivå 11.1 Maskinvaru
- DXGI-formatstöd för Direct3D-funktionsnivå 11.0 Maskinvaru-
- maskinvarustöd för Direct3D 10Level9-format
- maskinvarustöd för Direct3D 10.1-format
- maskinvarustöd för Direct3D 10-format
Relaterade ämnen