Livelli di rendering della grafica

Un livello di rendering definisce un livello di funzionalità e prestazioni dell'hardware grafico per un dispositivo che esegue un'applicazione WPF.

Nel presente argomento sono contenute le seguenti sezioni.

  • Hardware grafico
  • Definizioni dei livelli di rendering
  • Altre risorse
  • Argomenti correlati

Hardware grafico

Di seguito sono riportate le funzionalità dell'hardware grafico che influiscono maggiormente sui livelli di rendering:

  • RAM video: la quantità di memoria video disponibile nell'hardware grafico determina le dimensioni e il numero di buffer che possono essere utilizzati per la composizione della grafica.

  • Pixel shader: un pixel shader è una funzione di elaborazione grafica che calcola gli effetti per singolo pixel. A seconda della risoluzione della grafica visualizzata, può essere necessario elaborare milioni di pixel per ogni fotogramma di visualizzazione.

  • Vertex shader: un vertex shader è una funzione di elaborazione grafica che esegue operazioni matematiche sui dati vertex dell'oggetto.

  • Supporto multitrama: il supporto multitrama fa riferimento alla possibilità di applicare due o più trame distinte durante un'operazione di sfumatura su un oggetto di grafica tridimensionale. Il grado del supporto multitrama è determinato dal numero di unità multitrama dell'hardware grafico.

Definizioni dei livelli di rendering

Le funzionalità dell'hardware grafico determinano la funzionalità di rendering di un'applicazione WPF. Nel sistema WPF vengono definiti tre livelli di rendering:

  • Livello di rendering 0: nessuna accelerazione dell'hardware grafico. Tutte le funzionalità grafiche utilizzano l'accelerazione software. Il livello di versione di DirectX è inferiore alla versione 9.0.

  • Livello di rendering 1: alcune funzionalità grafiche utilizzano l'accelerazione dell'hardware grafico. Il livello di versione di DirectX è superiore o uguale rispetto alla versione 9.0.

  • Livello di rendering 2: la maggior parte delle funzionalità grafiche utilizzano l'accelerazione dell'hardware grafico. Il livello di versione di DirectX è superiore o uguale rispetto alla versione 9.0.

La proprietà RenderCapability.Tier consente di recuperare il livello di rendering in fase di esecuzione dell'applicazione. Utilizzare il livello di rendering per determinare se il dispositivo supporta determinate funzionalità grafiche con accelerazione hardware. L'applicazione può accettare quindi, in fase di esecuzione, diversi percorsi di codice a seconda del livello di rendering supportato dal dispositivo.

Livello di rendering 0

Il livello di rendering 0 indica nessuna accelerazione dell'hardware grafico per l'applicazione nel dispositivo. A questo livello, presupporre che il rendering della grafica verrà eseguito tramite software senza accelerazione hardware. La funzionalità di questo livello corrisponde a una versione di DirectX precedente alla 9.0.

Livelli di rendering 1 e 2

NotaNota

A partire da .NET Framework 4, il livello di rendering 1 è stato ridefinito in modo che inclusa solo l'hardware grafico che supporta DirectX 9.0 o versione successiva.L'hardware grafico che supporta DirectX 7 o 8 è ora definito come livello di rendering 0.

Un livello di rendering pari a 1 o 2 indica che la maggior parte delle funzionalità grafiche di WPF utilizzeranno l'accelerazione hardware se le risorse di sistema necessarie sono disponibili e non sono esaurite. Corrisponde a una versione di DirectX successiva o uguale a 9.0.

Nella tabella seguente sono illustrate le differenze nei requisiti hardware grafici per i livelli di rendering 1 e 2:

Funzionalità

Livello 1

Livello 2

Versione di DirectX

Versione 9.0 o successive.

Versione 9.0 o successive.

RAM video

Deve essere maggiore o uguale a 60 MB.

120 MB o superiore.

Pixel shader

La versione deve essere successiva o uguale alla 2.0.

La versione deve essere successiva o uguale alla 2.0.

Vertex shader

Nessun requisito.

La versione deve essere successiva o uguale alla 2.0.

Unità multitrama

Nessun requisito.

Il numero di unità deve essere maggiore o uguale a 4.

Le funzionalità riportate di seguito dispongono dell'accelerazione hardware per i livelli di rendering 1 e 2:

Funzionalità

Note

Rendering 2D

È supportata la maggior parte del rendering 2D.

Rasterizzazione 3D

È supportata la maggior parte della rasterizzazione 3D.

Filtro anisotropico 3D

WPF tenta di utilizzare il filtro anisotropico per il rendering del contenuto 3D. Il filtro anisotropico fa rifermento al miglioramento della qualità dell'immagine di trame su superfici lontane e molto angolate rispetto alla fotocamera.

Mapping MIP 3D

WPF tenta di utilizzare il mapping MIP quando per eseguire il rendering di contenuto 3D. Il mapping MIP migliora la qualità del rendering della trama quando una trama occupa un campo visivo più ridotto in un oggetto Viewport3D.

Sfumature radiali

Sebbene supportato, evitare l'utilizzo dell'oggetto RadialGradientBrush su oggetti di grandi dimensioni.

Calcoli dell'illuminazione 3D

In WPF l'illuminazione viene calcolata per ogni vertice, ovvero viene calcolata un'intensità della luce per ogni vertice e per ogni materiale applicato a una mesh.

Rendering del testo

Il rendering dei caratteri basato sulla tecnologia dei subpixel utilizza i pixel shader disponibili nell'hardware grafico.

Le funzionalità riportate di seguito dispongono dell'accelerazione hardware solo per il livello di rendering 2:

Funzionalità

Note

Anti-aliasing 3D

Anti-aliasing 3D è supportato solo nei sistemi operativi che supportano WDDM (Windows Display Driver Model), ad esempio Windows Vista e Windows 7.

Le funzionalità riportate di seguito non dispongono dell'accelerazione hardware:

Funzionalità

Note

Contenuto stampato

Il rendering del contenuto stampato viene eseguito tramite la pipeline software di WPF.

Contenuto rasterizzato che utilizza RenderTargetBitmap

Qualsiasi contenuto il cui rendering viene eseguito tramite il metodo Render dell'oggetto RenderTargetBitmap.

Contenuto affiancato che utilizza l'oggetto TileBrush

Qualsiasi contenuto affiancato in cui la proprietà TileMode dell'oggetto TileBrush è impostata su Tile.

Superfici che superano la dimensione massima della trama dell'hardware grafico

Per la maggior parte dell'hardware grafico, le grandi superfici presentano dimensioni pari a 2048 x 2048 o 4096 x 4096 pixel.

Qualsiasi operazione i cui requisiti RAM video superano la memoria dell'hardware grafico

È possibile monitorare l'utilizzo della RAM video dell'applicazione tramite lo strumento Perforator incluso nella Famiglia di prodotti per l'analisi delle prestazioni WPF in Windows SDK.

Finestre sovrapposte

Le finestre sovrapposte consentono alle applicazioni WPF di eseguire il rendering del contenuto sullo schermo in una finestra non rettangolare. Nei sistemi operativi che supportano WDDM (Windows Display Driver Model), quali Windows Vista e Windows 7, le finestre sovrapposti dispongono di accelerazione hardware. In altri sistemi, ad esempio Windows XP, il rendering delle finestre sovrapposte viene eseguito tramite software senza accelerazione hardware.

È possibile abilitare le finestre sovrapposte in WPF impostando le proprietà dell'oggetto Window indicate di seguito:

Altre risorse

Le risorse elencate di seguito possono essere utili per l'analisi delle caratteristiche di prestazione dell'applicazione WPF.

Impostazioni del Registro di sistema per il rendering della grafica

In WPF sono disponibili quattro impostazioni del Registro di sistema per il controllo del rendering in WPF:

Impostazione

Descrizione

Opzione Disabilita accelerazione hardware

Specifica se l'accelerazione hardware deve essere abilitata.

Valore massimo di campionamento multiplo

Specifica il grado di campionamento multiplo per l'anti-aliasing del contenuto 3-D.

Impostazione Data driver video necessaria

Specifica se il sistema disabilita l'accelerazione hardware per i driver rilasciati prima di novembre 2004.

Opzione Utilizza unità di rasterizzazione dei riferimenti

Specifica se WPF deve utilizzare l'unità di rasterizzazione dei riferimenti.

A queste impostazioni è possibile accedere tramite qualsiasi utilità di configurazione esterna in cui sia possibile fare riferimento alle impostazioni del Registro di sistema di WPF. Queste impostazioni possono essere create o modificate accedendo direttamente ai valori utilizzando l'editor del Registro di sistema di Windows. Per ulteriori informazioni, vedere Impostazioni del Registro di sistema per il rendering della grafica.

Strumenti di profilatura delle prestazioni WPF

WPF fornisce una famiglia di strumenti di profilatura delle prestazioni che consente di esaminare il comportamento dell'applicazione in runtime e di determinare i tipi di ottimizzazione delle prestazioni che è possibile applicare. Nella tabella riportata di seguito sono elencati gli strumenti di profilatura delle prestazioni inclusi nello strumento Windows SDK, famiglia di prodotti di analisi delle prestazioni WPF:

Strumento

Descrizione

Perforator

Utilizzato per l'analisi del comportamento di rendering.

Visual Profiler

Permette di profilare l'utilizzo dei servizi WPF, ad esempio la gestione del layout e degli eventi, tramite gli elementi della struttura ad albero visuale.

La famiglia di prodotti di analisi delle prestazioni WPF consente di ottenere una rappresentazione grafica completa dei dati relativi alle prestazioni. Per ulteriori informazioni sugli strumenti di prestazioni WPF, vedere Famiglia di prodotti per l'analisi delle prestazioni WPF.

Strumento di diagnostica DirectX

Lo strumento di diagnostica DirectX, Dxdiag.exe, è stato progettato per risolvere i problemi correlati a DirectX. La cartella di installazione predefinita dello strumento di diagnostica DirectX è:

~\Windows\System32

Quando si esegue lo strumento di diagnostica DirectX, la finestra principale contiene un set di schede che consentono di visualizzare e diagnosticare le informazioni correlate a DirectX. Ad esempio, nella scheda Sistema sono contenute informazioni di sistema sul computer e viene specificata la versione di DirectX installata.

Finestra principale dello strumento di diagnostica DirectX

Schermata: Strumento di diagnostica DirectX

Vedere anche

Riferimenti

RenderCapability

RenderOptions

Concetti

Ottimizzazione delle prestazioni di applicazioni WPF

Famiglia di prodotti per l'analisi delle prestazioni WPF

Impostazioni del Registro di sistema per il rendering della grafica

Suggerimenti sulle animazioni

Cronologia delle modifiche

Data

Cronologia

Motivo

Ottobre 2010

Informazioni aggiornate per .NET Framework 4 e il livello di rendering 2.

Commenti e suggerimenti dei clienti.

Settembre 2010

Aggiunte informazioni sugli strumenti di profilatura delle prestazioni WPF.

Miglioramento delle informazioni.