Livelli di funzionalità hardware
Descrive la funzionalità dei livelli di funzionalità 11_0 a 12_1.
- Sistemi di numerazione
- Supporto a livello di funzionalità
- Supporto hardware per i formati DXGI
- Argomenti correlati
Per gestire la diversità delle schede video nelle macchine nuove e esistenti, Microsoft Direct3D 11 ha introdotto il concetto di livelli di funzionalità. Ogni scheda video implementa un determinato livello di funzionalità Microsoft DirectX (DX) a seconda delle unità di elaborazione grafica (GPU) installate. Un livello di funzionalità è un set ben definito di funzionalità GPU. Ad esempio, il livello di funzionalità 11_0 implementa la funzionalità implementata in Direct3D 11.
Quando si crea un dispositivo, è possibile provare a creare un dispositivo per il livello di funzionalità che si vuole richiedere. Se la creazione del dispositivo funziona, tale livello di funzionalità esiste, in caso contrario, l'hardware non supporta tale livello di funzionalità. È possibile provare a ricreare un dispositivo a livello di funzionalità inferiore oppure scegliere di uscire dall'applicazione.
Le proprietà di base dei livelli di funzionalità sono:
- Tutti i driver Direct3D 12 saranno a livello di funzionalità 11_0 o superiore.
- Una GPU che consente la creazione di un dispositivo soddisfa o supera la funzionalità di tale livello di funzionalità.
- Un livello di funzionalità include sempre la funzionalità dei livelli di funzionalità precedenti o inferiori.
- Un livello di funzionalità non implica prestazioni, solo funzionalità. Le prestazioni dipendono dall'implementazione hardware.
- Un livello di funzionalità viene scelto quando si chiama D3D12CreateDevice.
- Per informazioni più dettagliate sulle funzionalità supportate (soprattutto quelle contrassegnate facoltative nella tabella seguente, il che significa che l'hardware potrebbe supportare la funzionalità ma non è necessario) chiamare CheckFeatureSupport.
Per informazioni sulle limitazioni sulla creazione di dispositivi di tipo non hardware in determinati livelli di funzionalità, vedere Limitazioni creazione di dispositivi WARP e riferimenti. Per altre informazioni sull'introduzione dei livelli di funzionalità, vedere la documentazione di Direct3D 11 sui livelli di funzionalità Direct3D.
Sistemi di numerazione
I livelli di funzionalità hardware non sono uguali alle versioni api. Ad esempio, esiste un'API D3D11.3, ma non esiste alcun livello di funzionalità hardware 11_3. I livelli di funzionalità vengono definiti nell'enumerazione D3D_FEATURE_LEVEL .
Esistono tre sistemi di numerazione distinti:
- Le versioni Direct3D usano un periodo; Ad esempio, Direct3D 12.0.
- I modelli shader usano un periodo; ad esempio, modello shader 5.1.
- I livelli di funzionalità usano un carattere di sottolineatura; ad esempio, livello di funzionalità 12_0.
Supporto a livello di funzionalità
Le funzionalità seguenti sono disponibili per ogni livello di funzionalità Direct3D.
Le intestazioni nella riga superiore sono livelli di funzionalità Direct3D. Le intestazioni nella colonna a sinistra sono caratteristiche.
Funzionalità \ Livello di funzionalità | 12_1 __ | 12_0 __ | 11_1¹ | 11_0 |
---|---|---|---|---|
Modello di shader | 6,0 | 6.0 | 6.0/5.1² | 6.0/5.1² |
Livello di associazione di risorse | Tier2³ | Tier2³ | Tier1³ | Tier1³ |
Risorse riquadri | Tier2³ | Tier2³ | Facoltativo | Facoltativo |
Rasterizzazione conservativa | Tier1³ | Facoltativo | Facoltativo | No |
Visualizzazioni ordinate di Rasterizer | sì | Facoltativo | Facoltativo | No |
Filtri min/max | Sì | sì | Facoltativo | No |
Mapping del buffer predefinito | Facoltativo | Facoltativo | Facoltativo | Facoltativo |
Valore di riferimento Stencil specificato per shader | Facoltativo | Facoltativo | Facoltativo | No |
Caricamento della visualizzazione di accesso non ordinato | 18 formati, più facoltativo | 18 formati, più facoltativo | 3 formati, più facoltativo | 3 formati, più facoltativo |
Geometry shader | Sì | Sì | Sì | Sì |
Stream Out | Sì | Sì | Sì | Sì |
DirectCompute/Compute Shader | Sì | Sì | Sì | Sì |
Hull e Domain Shader | Sì | Sì | Sì | Sì |
Matrici di risorse trama | Sì | Sì | Sì | Sì |
Matrici di risorse cubemap | Sì | Sì | Sì | Sì |
Compressione BC1 a BC7 | Sì | Sì | Sì | Sì |
Alfa-to-coverage | Sì | Sì | Sì | Sì |
Operazioni per la logica (fusione di output) | Sì | Sì | sì | Facoltativo |
Rasterizzazione indipendente dalla destinazione | Sì | Sì | Sì | No |
Destinazione di rendering multipla (MRT) con ForcedSampleCount 1 | Sì | Sì | sì | Facoltativo |
Numero massimo di esempi forzati per il rendering solo UAV | 16 | 16 | 16 | 8 |
Dimensione massima trama | 16384 | 16384 | 16384 | 16384 |
Dimensione max cubemap | 16384 | 16384 | 16384 | 16384 |
Numero massimo di volume | 2048 | 2048 | 2048 | 2048 |
Ripetizione massima trama | 16384 | 16384 | 16384 | 16384 |
Max Anisotropy | 16 | 16 | 16 | 16 |
Numero massimo primitivo | 2^32 – 1 | 2^32 – 1 | 2^32 – 1 | 2^32 – 1 |
Indice max vertex | 2^32 – 1 | 2^32 – 1 | 2^32 – 1 | 2^32 – 1 |
Max Input Slot | 32 | 32 | 32 | 32 |
Destinazioni di rendering simultanee | 8 | 8 | 8 | 8 |
Query di occlusione | Sì | Sì | Sì | Sì |
Blend alfa separato | Sì | Sì | Sì | Sì |
Mirror Una volta | Sì | Sì | Sì | Sì |
Elementi del vertice sovrapposti | Sì | Sì | Sì | Sì |
Maschere di scrittura indipendenti | Sì | Sì | Sì | Sì |
Instancing | Sì | Sì | Sì | Sì |
- KPI richiede il runtime Direct3D 11.3 o Direct3D 12.
- ¹ Richiede il runtime Direct3D 11.1.
- ² Modello shader 5.0 può facoltativamente supportare shader a precisione doppia, shader con precisione doppia estesa, istruzioni dello shader SAD4 e shader di precisione parziale. Per determinare le opzioni del modello shader 5.0 disponibili, chiamare ID3D12Device::CheckFeatureSupport. La compatibilità dipende dall'hardware in esecuzione: shader model 5.1 è supportato solo sull'hardware che supporta l'API DirectX 12, indipendentemente dal livello di funzionalità usato. L'hardware DirectX 11 supporta solo fino al modello shader 5.0. L'API DirectX 12 scende solo a livello di funzionalità 11_0.
- I livelli ³ superiori sono facoltativi.
- I livelli di funzionalità 12_0 e 12_1 richiedono il runtime Direct3D 11.3 o Direct3D 12.
- Il livello di funzionalità 11_1 richiede il runtime Direct3D 11.1.
- Il livello di funzionalità 11_0 richiede il runtime Direct3D 11.0.
Supporto hardware per i formati DXGI
Per visualizzare tabelle di formati DXGI e funzionalità hardware, vedere:
- Supporto del formato DXGI per l'hardware Direct3D Livello di funzionalità 12.1
- Supporto del formato DXGI per l'hardware a livello di funzionalità Direct3D 12.0
- Supporto del formato DXGI per l'hardware Direct3D Livello di funzionalità 11.1
- Supporto del formato DXGI per l'hardware Direct3D a livello di funzionalità 11.0
- Supporto hardware per formati Direct3D 10Level9
- Supporto hardware per formati Direct3D 10.1
- Supporto hardware per formati Direct3D 10
Argomenti correlati