Condividi tramite


Visualizzatore pipeline grafica

La finestra Fasi pipeline grafica, uno degli strumenti di diagnostica della grafica presenti in Visual Studio, consente di comprendere il modo in cui un determinato evento di disegno viene spostato attraverso la pipeline di grafica.

Questa è la finestra Fasi pipeline grafica:

Un oggetto 3D attraversa le fasi della pipeline.

Informazioni sulla finestra Fasi pipeline grafica

La finestra Fasi pipeline grafica consente di analizzare l'output di ogni fase della pipeline grafica che si applica a un oggetto specifico sottoposto a rendering.In particolare, è possibile identificare le fasi in cui i dati stati interpretati erroneamente o trasformati in modo non corretto, ad esempio, è possibile determinare se una fase di vertex shader ha causato il disegno di un oggetto fuori dallo schermo.Dopo avere identificato la fase della pipeline in cui si verifica il problema, è possibile utilizzare gli altri strumenti di diagnostica della grafica per esaminare il modo in cui i dati sono stati interpretati o trasformati.Problemi di rendering visualizzati nelle fasi di pipeline sono spesso correlati ai descrittori di formato vertice, shader con errori programma, o stato non è configurato correttamente il dispositivo.

Hh873194.collapse_all(it-it,VS.110).gifFasi pipeline grafica

Nella finestra Fasi pipeline grafica sono visualizzati i dati di grafica solo per le fasi della pipeline che erano attive durante la chiamata di disegno.Per utilizzare gli strumenti di grafica in Visual Studio per esaminare l'output di ogni fase visualizzata, scegliere l'anteprima associata nella finestra Fasi pipeline grafica.

I compute shader non sono supportati nella finestra Fasi pipeline grafica.

  • Assemblaggio input
    Legge l'indice e i dati vertex forniti dall'app e li assembla per l'hardware grafico.L'anteprima visualizza un modello wireframe dei vertici assemblati.I dati di vertice che corrispondono alla posizione sono determinati dalla semantica di POSITION.Se la semantica di POSITION non è presente nell'output dell'assemblaggio input, nella fase Assemblaggio input non verrà visualizzato nulla.È possibile utilizzare l'editor di modelli per esaminare l'output della fase Assemblaggio input.

  • Vertex shader
    Elabora i vertici, in genere eseguono operazioni come trasformazioni, definizione di un'interfaccia e illuminazione.Un vertex shader accetta sempre un input del vertice e produce sempre un output del vertice.L'anteprima visualizza un'immagine wireframe della geometria trasformata.I dati di vertice che corrispondono alla posizione sono determinati dalla semantica di SV_POSITION o POSITION.Se la semantica di POSITION o SV_POSITION non è presente nell'output di vertex shader, nella fase Vertex shader non verrà visualizzato nulla.È possibile utilizzare l'editor di immagini per esaminare l'output della fase Vertex shader.

  • Hull shader
    Solo Direct3D 11.Elabora primitive geometriche: ad esempio come quadrati, triangoli o righe in patch geometriche meno significative che fungono da input alla fase di tessellatura a funzioni fisse.Nessuna anteprima viene visualizzata per la fase Hull shader.

  • Domain shader
    Solo Direct3D 11.Elabora i vertici della suddivisione restituiti dalla fase di tessellatura a funzioni fisse, simili alla fase di vertex shader.Nessuna anteprima viene visualizzata per la fase Domain shader.

  • Geometry shader
    Elabora intere primitive: punti, righe o triangoli insieme a informazioni opzionali sui vertici per le primitive adiacenti.Lo shader della geometria può cancellare la primitiva o generare uno o più nuove primitive nuove.L'anteprima visualizza un'immagine wireframe della geometria trasformata.È possibile utilizzare l'editor di immagini per esaminare l'output della fase Geometry shader.

  • Pixel shader
    Elabora i dati vertex interpolati per generare pixel a colori.L'anteprima visualizza un'immagine dell'output di pixel shader.È possibile utilizzare l'editor di immagini per esaminare l'output della fase Pixel shader.

  • Unione output
    Combina i vari tipi di risultati shader (ad esempio i valori di pixel shader e le informazioni di profondità) con il contenuto della destinazione rendering e del buffer di profondità insieme alle informazioni dello stencil buffer, per determinare come viene modificata la destinazione rendering.L'anteprima visualizza un'immagine del contenuto della destinazione rendering dopo che i vari risultati sono stati uniti e il contenuto dello stencil buffer è stato esaminato.È possibile utilizzare l'editor di immagini per esaminare l'output della fase Unione output.

Hh873194.collapse_all(it-it,VS.110).gifVisualizzazione e debug del codice di shader

È possibile visualizzare il codice per Vertex shader, Hull shader, Domain shader, Geometry shader, o Pixel shader o eseguirne il debug, utilizzando i comandi nella fase della pipeline associata allo shader.

Per visualizzare il codice sorgente di uno shader

  • Al di sotto della fase della pipeline associata allo shader che si desidera visualizzare, scegliere il titolo della fase della pipeline (ad esempio, scegliere Vertex shader per visualizzare il codice sorgente di vertex shader).

Per eseguire il debug di uno shader

  • Al di sotto della fase dello shader associata allo shader di cui si desidera eseguire il debug, al di sotto del titolo della fase dello shader, scegliere Avvia debug.Questo punto di ingresso nel debugger HLSL esegue il debug solo della prima chiamata di shader per la fase corrispondente, ovvero il primo vertice, primitiva o pixel che viene elaborato.Altre chiamate di queste fasi di shader possono accedere tramite Cronologia pixel grafica.

Hh873194.collapse_all(it-it,VS.110).gifCollegarsi al dispositivo di grafica

Per capire perché una chiamata di disegno interagisce in un modo specifico con una pipeline di grafica, potrebbero essere necessarie informazioni sullo stato corrente del dispositivo.Nella finestra Fasi pipeline grafica è presente un collegamento a tali informazioni.

Vedere anche

Attività

Procedura dettagliata: oggetti mancanti a causa dello sfondo Vertex

Procedure dettagliate: debug degli errori di rendering dovuti allo sfondo