Partager via


Liste des événements Graphics

La Liste des événements Graphics, qui est l'un des outils de diagnostic de graphiques dans Visual Studio, peut vous aider à explorer les événements Direct3D qui se sont produits pendant un frame spécial de votre jeu ou application et analyser les effets.Cela inclut la prise en charge d'événements tels que la création de périphériques ou d'objets.

Il s'agit de la Liste des événements Graphics :

Liste des événements ayant « Index » dans leur nom.

Comme de nombreux événements Direct3D peuvent être générés par un seul frame dans un jeu ou une application classique, la Liste des événements Graphics présente des fonctionnalités qui permettent de trouver rapidement des événements importants et des informations connexes.

Pour réduire le nombre d'événements inintéressants dans la liste des événements Graphics, les événements AddRef et Release sont omis, et vous pouvez filtrer les événements par nom, soit un par un, comme indiqué dans l'illustration précédente, où le filtrage permet d'afficher les événements ayant Vertex dans leur nom, soit à l'aide d'une liste délimitée par des points-virgules de mots clés (par exemple, « Dessin;Primitive » pour afficher les événements contenant Draw ou Primitive dans leurs noms).

[!REMARQUE]

La liste des filtres ne respecte pas la valeur espace- pour l'exemple, « dessin ; Primitive » et « dessin ; La primitive » sont différents.

Étant donné que les appels Draw sont des événements particulièrement importants, la Liste des événements Graphics fournit les boutons Accéder à l'appel de dessin suivant et Accéder à l'appel de dessin précédent, situés dans le coin supérieur gauche de la fenêtre, afin que vous puissiez les rechercher et vous déplacer entre eux rapidement.

Hh873200.collapse_all(fr-fr,VS.110).gifCatégories d'événements

Les événements qui sont affichés dans la Liste des événements Graphics sont organisés en quatre catégories ; trois qui représentent des événements individuels, et une quatrième utilisée pour regrouper des événements associés.Chaque événement est affiché avec une icône indiquant la catégorie à laquelle il appartient.

Catégorie

Description

Icône d'événement de dessin Événements de dessin

Marque un événement de dessin qui s'est produit pendant le frame capturé.

Icône d'événement pre-frame Événement de Pré-frame

Marque un événement qui s'est produit avant la capture du frame, par exemple la création de périphériques ou d'objets.

Icône du marqueur d'événements définie par l'utilisateur Jeton définie par l'utilisateur ou groupe d'événements

Marque un événement unique, ou un groupe d'événements associés, comme défini par l'application.Les groupes peuvent être développés pour afficher les événements qu'ils comprennent.

Les événements de frame et ceux pré- frame sont intégrés au runtime de Direct3D, et correspondent aux appels d'API Direct3D.Vous n'avez besoin d'effectuer aucune action pour activer ces événements.

Les groupes et les événements définis par l'utilisateur sont spécifiques à une application particulière.Vous pouvez utiliser des événements définis par l'utilisateur pour marquer des événements significatifs qui se produisent dans votre application afin de pouvoir les mettre en corrélation avec les événements graphiques dans la Liste des événements Graphics.Par exemple, vous pouvez utiliser un marqueur lorsqu'un certain type d'objet est dessiné afin de pouvoir trouver facilement son appel de dessin dans la Liste des événements Graphics.Vous pouvez utiliser des groupes d'événements définis par l'utilisateur pour organiser des événements associés dans des groupes ou des hiérarchies afin de pouvoir parcourir la Liste des événements Graphics plus facilement.Par exemple, vous pouvez regrouper les événements liés au rendu de l'interface.

Pour créer des marqueurs d'événement définis par l'utilisateur et des groupes d'événements définis par l'utilisateur dans votre application, utilisez les mêmes API que celles dont se sert Direct3D pour marquer des événements et des groupes à utiliser dans d'autres outils Direct3D.Dans Direct3D 11,1, les API appartiennent à l'interface ID3DUserDefinedAnnotation ; pour les versions antérieures de Direct3D, utilisez la famille D3DPERF_ des API.

Description de l'API

API (Direct3D 11.1)

API (Direct3D 11.0 et version antérieure)

Démarrez un groupe d'événements défini par l'utilisateur

ID3DUserDefinedAnnotation::BeginEvent

D3DPerf_BeginEvent

Terminez un groupe d'événements défini par l'utilisateur

ID3DUserDefinedAnnotation::EndEvent

D3DPerf_EndEvent

Créez un marqueur d'événements défini par l'utilisateur

ID3DUserDefinedAnnotation::SetMarker

D3DPerf_SetMarker

Hh873200.collapse_all(fr-fr,VS.110).gifLiens vers les objets graphiques

Pour comprendre les événements Graphics, vous pouvez avoir besoin d'informations supplémentaires sur l'état du périphérique actuel ou les objets Direct3D référencés par l'événement.La Liste des événements Graphics fournit des liens vers ces informations pour chaque événement.

Utilisation de la liste des événements Graphics pour rechercher des problèmes de rendu

À l'aide de l'option Liste des événements Graphics et des autres outils Graphics Diagnostics, vous pouvez désigner avec précision un événement Direct3D spécifique à l'origine du problème de rendu.Lorsque vous avez identifié l'événement dans lequel le problème est apparu en premier, vous pouvez utiliser d'autres outils Graphics Diagnostics pour déterminer la cause du problème.

Pour les problèmes de rendu liés à l'absence d'un objet, autrement dit, l'objet n'apparaît pas à l'emplacement souhaité, vous pouvez utiliser la Liste des événements Graphics conjointement avec la fenêtre Étapes de canalisation Graphics.Lorsque vous sélectionnez un événements Draw ou Dispatch dans la liste d'événements, la fenêtre Étapes de canalisation Graphics affiche l'effet de l'événement à chaque étape du pipeline.En exécutant pas à pas ces événements et en examinant les étapes de pipeline, vous pouvez identifier le moment où l'objet a été restitué, même s'il n'est pas affiché sur la cible de rendu.

Pour mieux comprendre les problèmes de rendu dans lesquels un objet est affiché incorrect- autrement dit, l'objet est présent, mais possède un non valide apparence- vous pouvez utiliser Liste des événements Graphics pour examiner les événements qui sont capturés dans le document du journal des graphiques.Lorsque vous sélectionnez une liste d'événements d' Draw ou d' Dispatch dans l'événement, Visual Studio affiche la cible de rendu comme elle existait lorsque l'événement s'est produit.En effectuant un pas - à - pas ces événements et en examinant comment la cible de rendu changements dans la fenêtre de document du journal des graphiques, vous pouvez observer l'effet des événements spécifiques et inclure ainsi comment la dernière s'affichent la cible a été accumulé par de nombreux événements (parfois qu'une erreur de rendu est provoquée par l'utilisation de différents événements interactifs dans la cible de rendu.

Voir aussi

Tâches

Procédure pas à pas : objets manquants en raison de l'état du périphérique