Come registrare le chiamate a D3D

August 1

Come registrare le chiamate a D3D


Direct3D è un potente strumento per la visualizzazione di grafica interattiva a un utente. Esso fornisce un ampio accesso all'hardware della scheda grafica, che permette al programmatore di creare ambienti interessanti e complessi. Risoluzione dei problemi Direct3D può essere difficile senza gli strumenti adeguati quando le cose vanno male, ma per fortuna il Direct3D SDK include PIX, uno strumento di risoluzione dei problemi potente. Con PIX, è possibile visualizzare direttamente i dati inviati alla scheda grafica, il rendering di una scena di call-by-call e persino registrare tutte le chiamate effettuate verso Direct3D.

istruzione

1 Compilare il programma. Non bandiere particolari sono tenuti ad utilizzare PIX, ma ci sono alcune impostazioni aggiuntive necessarie per eseguire il debug shader HLSL. Per eseguire il debug shaders HLSL in DirectX 9, dichiarare le D3DXSHADER_DEBUG e D3DXSHADER_SKIPOPTIMIZATION flag di compilazione. Per eseguire il debug shaders HLSL in DirectX 10, dichiarare le D3D10_SHADER_DEBUG e D3D10_SHADER_SKIP_OPTIMIZATION flag di compilazione.

2 Aprire PIX e configurare un esperimento di base PIX. Questo esperimento di catturare tutti i dati grafici per la propria applicazione quando viene eseguito. Configurare l'esperimento per tracciare le informazioni sulla chiamata Direct3D desiderato.

3 Simula facendo clic sul pulsante "Start Experiment". Questo lancerà l'applicazione grafica e registrare tutte le chiamate come specificato dalle impostazioni dell'esperimento.

4 dati Review catturati durante l'esperimento PIX utilizzando la visualizzazione Run. Interrompere l'esperimento al fotogramma desiderato.

5 Utilizzare gli eventi Visualizza per visualizzare le chiamate effettuate verso Direct3D per il frame corrente. È possibile rivedere i dati inviati a queste chiamate e modificare i dati utilizzati. È possibile anche parzialmente il rendering di una scena, chiamata uno Direct3D alla volta, per vedere come ogni chiamata cambia la scena renderizzata.

Consigli e avvertenze

  • PIX ha molti strumenti più potenti a disposizione del programmatore grafico di lavoro con Direct3D. Consultare la voce della libreria MSDN sul PIX per altri usi di questo potentissimo aiuto di debug.
  • Configurare l'applicazione grafica per aiutare facilmente a raggiungere la porzione di scena che richiede PIX debug. Questo è particolarmente importante nei giochi complessi, nei quali errori di rendering grafico possono prendere lunghi periodi di tempo a verificarsi.
  • PIX utilizza molta memoria, e le sue file esperimento può crescere molto grande in fretta. Cercate di limitare i log di correre a più breve durata possibile, pur continuando a produrre informazioni utili.