Share via


Diagnostica grafica

In questo documento vengono descritti gli strumenti di diagnostica della grafica di Visual Studio, che possono essere utilizzati per diagnosticare problemi di rendering comuni nelle applicazioni grafiche di DirectX.La diagnostica della grafica supporta Direct3D 10, Direct3D 10.1, Direct3D 11 e Direct3D 11.1 e fornisce supporto limitato per Direct2D.Non supporta versioni precedenti di Direct3D, DirectDraw o altri API grafiche.

È possibile utilizzare la diagnostica della grafica per le seguenti attività:

  • Acquisire i frame di cui è stato eseguito il rendering per un esame successivo.

  • Individuare e selezionare i frame acquisiti per l'ispezione e le analisi approfondite.

  • Visualizzare eventi di Direct3D che si sono verificati durante un frame e i relativi effetti sull'applicazione.

  • Visualizzare i dati di mesh tridimensionali o i dati della destinazione rendering dopo ogni fase della pipeline.

  • Passare alla posizione del codice sorgente di un determinato evento Direct3D.

  • Individuare gli eventi Direct3D che hanno contribuito al colore di un pixel specifico in ogni frame.

  • Esaminare gli oggetti Direct3D come ad esempio lo stato, i buffer, le mesh e le trame del dispositivo.

Log di grafica

Durante la sessione di acquisizione della diagnostica della grafica, viene creato un log di grafica per registrare gli eventi, le risorse e lo stato della grafica.In seguito, è possibile utilizzare il log di grafica per ricreare ed esaminare in dettaglio i frame acquisiti, senza che sia necessario replicare l'ambiente utilizzato per acquisirli.È possibile caricare più file di log di grafica (.vsglog) contemporaneamente per confrontare i dati e i risultati del rendering.Poiché questi file sono autonomi, è possibile condividerli con altri sviluppatori.Per ulteriori informazioni, vedere Debug grafica DirectX.

[!NOTA]

Poiché alcune API Windows 8 non sono disponibili in Windows 7 o in Windows Vista, le applicazioni che utilizzano queste API non possono essere ricreate in Windows 7 o in Windows Vista.

Per aprire un file di log di grafica (vsglog)

  1. Nella barra dei menu di In Visual Studio scegliere File, Apri, File.Viene visualizzata la finestra di dialogo Apri file.

  2. Specificare un file di log di grafica (con estensione vsglog) da aprire, quindi scegliere il pulsante Apri.

Utilizzo della barra degli strumenti di diagnostica della grafica

La barra degli strumenti di diagnostica della grafica offre strumenti che consentono di acquisire i dati in un log di grafica e quindi di diagnosticare e sottoporre a debug i problemi acquisiti nel log.

Di seguito viene riportata la barra degli strumenti di diagnostica della grafica:

Barra degli strumenti debugger grafica in modalità diagnostica

Nella tabella seguente vengono descritti gli elementi nella barra degli strumenti di diagnostica della grafica.Gli elementi sono elencati nell'ordine in cui appaiono da sinistra a destra.

Pulsante della barra degli strumenti

Descrizione

Avvia diagnostica

Avvia un'app Direct3D con supporto per la diagnostica grafica abilitata.Quando si avvia un'applicazione in questo modo, è possibile utilizzare la diagnostica della grafica per acquisire informazioni dettagliate sui singoli frame nell'applicazione in esecuzione.

Elenco eventi

Apre la finestra Elenco eventi grafici.

Cronologia pixel

Apre è la finestra Cronologia pixel grafica.

Stack di chiamate eventi

Apre la finestra Stack di chiamate eventi grafici.

Tabella oggetti

Apre la finestra Tabella oggetti grafici.

Fasi pipeline

Apre la finestra Fasi pipeline grafica.

Acquisisci frame

Acquisisce un frame da un'applicazione Direct3D in esecuzione avviata utilizzando il pulsante Avvia diagnostica.Il pulsante Acquisisci frame è abilitato solo quando un'app abilitata per la diagnostica grafica è in esecuzione.

Pannello di controllo DirectX

DirectX dispone di un Pannello di controllo da cui è possibile modificarne il comportamento. Consente ad esempio di abilitare la versione di debug dei componenti di runtime di DirectX, di selezionare il tipo di messaggi di debug segnalati e di disabilitare determinate funzionalità hardware di grafica per permettere di emulare hardware meno potente.Questo livello di controllo su DirectX può facilitare il debug e il testing dell'app di DirectX.È possibile accedere al Pannello di controllo di DirectX da Visual Studio.

Per aprire il Pannello di controllo di DirectX

  • Sulla barra dei menu scegliere Debug, Grafica, Pannello di controllo DirectX.

Finestre degli strumenti di diagnostica della grafica

Di seguito vengono mostrate le finestre degli strumenti utilizzate per analizzare i frame acquisiti ed eseguirne il debug.Ogni finestra espone una categoria diversa di informazioni acquisite per il frame che viene archiviato e anche per i singoli pixel in un frame.

Tutte le finestre debugger grafica visualizzate

Argomenti correlati

Titolo

Descrizione

Cattura informazioni grafica

Viene descritto come acquisire informazioni sulla grafica in modo che sia possibile analizzarle negli strumenti di diagnostica della grafica.

Documento log grafica

Viene descritto come utilizzare grafica che le informazioni nella grafica registrano il documento per identificare gli elementi visivi causati da problemi di rendering.

Elenco eventi grafici

Viene descritto come utilizzare l'Elenco eventi grafici per identificare gli eventi correlati ai problemi di rendering.

Visualizzatore pipeline grafica

Viene descritto come utilizzare la finestra Fasi pipeline grafica per identificare la fase della pipeline in cui viene visualizzato prima un problema di rendering.

Stack di chiamate eventi grafici

Viene descritto come utilizzare lo Stack di chiamate eventi grafici per individuare il codice dell'applicazione relativo ai problemi di rendering.

Cronologia pixel grafica

Viene descritto come utilizzare Cronologia pixel grafica per esaminare i dettagli degli eventi che hanno influito sul colore finale di un pixel.

Tabella oggetti grafici

Viene descritto come utilizzare la Tabella oggetti grafici per visualizzare i dettagli degli oggetti correlati ai problemi di rendering.

Debug HLSL

Viene descritto come utilizzare il Debugger HLSL.