Débogueur DirectX PIX

Introduction

L'auteur

Liens sociaux

Viadeo Twitter Facebook Share on Google+   

I. Introduction

PIX est un débogueur pour les applications DirectX. Disponible au travers du SDK DirectX, cet outil permet d’enregistrer les appels DirectX effectués par une application afin d’analyser et de déboguer les problèmes graphiques.

II. Lancement de PIX


Lancement de PIX


Afin de réaliser une capture GPU, il est nécessaire que le code de PIX soit injecté avant le premier appel DirectX. Il est donc impossible d’attacher PIX a un programme déjà lancé si vous souhaitez faire une capture GPU.

Il est possible de faire du débogage à distance avec PIX.

III. Faire une capture


Faire une capture avec PIX


Vous pouvez retrouver le projet ModelViewer utilisé dans cette démonstration, dans les exemples d’utilisation de DirectX.

Le débogage d’une application à travers PIX apporte un surcoût diminuant la vitesse d’exécution de votre application. La capture GPU démarre après l’appui sur la touche « Impr Écran ». Il est possible de prendre plusieurs captures pendant une même exécution de l’application.

Si les informations affichées par PIX vous gênent, celles-ci peuvent être désactivées dans les options.

IV. Aperçu de la capture


Aperçu de la capture PIX


Après le chargement d’une capture, PIX vous donne accès à de nouveaux onglets. L’onglet aperçu (« Overview ») affiche une liste des appels Direct3D, une capture d’écran et une ligne temporelle des opérations de rendu.

Il est possible de rejouer les appels Direct3D afin que PIX les analysent. Même s’il est aussi possible de les rejouer sur une autre machine, les différences entre les constructeurs de GPU ou encore entre les pilotes d’un même constructeur font que cela risque de ne pas fonctionner.

Les données de la ligne temporelle ne seront disponibles qu’après avoir cliqué sur le bouton « Collect Timing Data ».

V. Analyse du pipeline


Analyse du pipeline de la capture PIX


L’onglet pipeline permet d’avoir accès à des détails sur les appels Direct3D. Pour cela, l’onglet se décompose en trois parties : la liste des appels, des informations sur chaque appel et une vue de l’état du pipeline graphique au moment de l’appel de la fonction sélectionnée.

La vue du pipeline permet d’afficher les données contenues dans les tampons et d’avoir un rendu intermédiaire de l’image.

VI. Débogage


Débogage à travers PIX


L’onglet de débogage permet de déboguer les shaders. Ainsi, vous pouvez placer des points d’arrêt, effectuer une exécution pas à pas de vos shaders et voir la valeur des variables utilisées.

VII. Commenter

N’hésitez pas à commenter cet article sur le forum.

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+   

En complément sur Developpez.com

  

Copyright © 2017 Microsoft DirectX 12 and Graphics Education. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.