Syntaxe
Paramètres
pBuffer [in, optional]Type : ID3D12Resource * La mémoire tampon, sous forme d’ID3D12Resource, qui doit être dans l’état D3D12_RESOURCE_STATE_PREDICATION ou D3D21_RESOURCE_STATE_INDIRECT_ARGUMENT (les deux valeurs sont identiques et fournies comme alias par souci de clarté), ou NULL pour désactiver la prédication. AlignedBufferOffset [in]
Type : UINT64 Le décalage aligné de la mémoire tampon, sous forme de UINT64. Operation [in]
Type : D3D12_PREDICATION_OP Spécifie une valeur D3D12_PREDICATION_OP, comme D3D12_PREDICATION_OP_EQUAL_ZERO ou D3D12_PREDICATION_OP_NOT_EQUAL_ZERO.
Valeur de retour
Type : void Aucune.Remarques
Utilisez cette méthode pour indiquer que les commandes subséquentes de rendu et de manipulation de ressources ne sont pas réellement exécutées si les données résultantes du prédicat sont égales à l’opération spécifiée. Contrairement à Direct3D 11, dans Direct3D 12, l’état de prédication n’est pas hérité par les listes de commandes directes, et la prédication est toujours respectée (il n’y a pas d’indications de prédication). Toutes les listes de commandes directes commencent avec la prédication désactivée. Les bundles héritent de l’état de prédication. Il est permis de lier le même prédicat plusieurs fois. Les appels d’API non permis feront en sorte que Close retourne une erreur, ou que ID3D12CommandQueue::ExecuteCommandLists abandonne la liste de commandes et supprime l’appareil. La couche de débogage émettra des erreurs chaque fois que la validation du runtime échoue. Consultez Predication pour plus d’informations.Exemples
L’exemple D3D12PredicationQueries utilise ID3D12GraphicsCommandList::SetPredication comme suit :Configuration requise
En-tête : d3d12_xs.h ou d3d12_x.hBibliothèque : d3d12_xs.lib ou d3d12_x.lib
Plateformes prises en charge : consoles XBOX Series et famille XBOX One
