ID3D12GraphicsCommandList4 ::ExecuteMetaCommand, méthode (d3d12.h)
Enregistre l’exécution (ou l’appel) de la méta-commande spécifiée dans une liste de commandes graphiques.
Appelez ID3D12GraphicsCommandList4 ::InitializeMetaCommand avant d’exécuter une meta commande. Pendant l’appel, vous pouvez spécifier des remplacements pour les valeurs de n’importe quel paramètre d’exécution. Vous pouvez exécuter plusieurs méta-commandes sur la même liste de commandes graphiques. Et vous pouvez exécuter la même méta-commande plusieurs fois dans la même liste de commandes.
Avec une capture PIX effectuée à l’aide de méta-commandes, vous pouvez lire cela sur la même configuration matérielle. Mais, de par sa conception, il n’est pas portable pour d’autres GPU.
Syntaxe
void ExecuteMetaCommand(
[in] ID3D12MetaCommand *pMetaCommand,
[in, optional] const void *pExecutionParametersData,
[in] SIZE_T ExecutionParametersDataSizeInBytes
);
Paramètres
[in] pMetaCommand
Pointeur vers un ID3D12MetaCommand représentant la méta-commande à initialiser.
[in, optional] pExecutionParametersData
Pointeur facultatif vers une structure constante contenant les valeurs des paramètres pour l’exécution de la commande meta.
[in] ExecutionParametersDataSizeInBytes
Une SIZE_T contenant la taille de la structure pointée vers par pExecutionParametersData, si elle est définie, sinon 0.
Valeur retournée
Si cette méthode réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.
Remarques
Votre application est responsable de la configuration des ressources fournies à une méta-commande dans l’état requis selon la spécification de meta command. La spécification de définition de meta command définit l’état de ressource attendu pour chaque paramètre. Votre application est chargée d’insérer des barrières d’affichage d’accès non ordonné (UAV) pour les ressources d’entrée avant que l’algorithme de la méta-commande ne puisse les consommer. Vous êtes également responsable de l’insertion de la barrière UAV pour les ressources de sortie lorsque vous envisagez de les lire.
Lors d’un appel d’algorithme, le pilote peut insérer autant de barrières UAV dans les ressources de sortie que nécessaire pour synchroniser l’utilisation des ressources de sortie dans l’implémentation de l’algorithme. Du point de vue de votre application, vous devez supposer que toutes les ressources sortantes et entrantes sont écrites dans la commande meta, y compris la mémoire de travail.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Windows |
En-tête | d3d12.h |