Partager via


ID3D12Device7 ::AddToStateObject, méthode (d3d12.h)

Ajoutez de façon incrémentielle à un objet d’état existant. Cela entraîne une surcharge processeur inférieure à la création d’un objet d’état à partir de zéro qui est un sur-ensemble d’un objet existant (par exemple, l’ajout de quelques nuanceurs supplémentaires).

Syntaxe

HRESULT AddToStateObject(
  const D3D12_STATE_OBJECT_DESC *pAddition,
  ID3D12StateObject             *pStateObjectToGrowFrom,
  REFIID                        riid,
  void                          **ppNewStateObject
);

Paramètres

pAddition

Type : _In_ const D3D12_STATE_OBJECT_DESC*

Description du contenu de l’objet d’état à ajouter à l’objet d’état existant. Pour faciliter la génération de ce problème , consultez l’assistance CD3D12_STATE_OBJECT_DESC dans la classe dans d3dx12.h.

pStateObjectToGrowFrom

Type : _In_ ID3D12StateObject*

Objet d’état existant, qui peut être utilisé (par exemple, raytracing actif) pendant cette opération.

L’objet d’état existant ne doit pas être de type Collection.

riid

Type : _In_ REFIID

Doit être l’IID de l’interface ID3D12StateObject .

ppNewStateObject

Type : _COM_Outptr_ void**

Objet d’état retourné.

Le comportement n’est pas défini si les identificateurs de nuanceur sont récupérés pour les nouveaux nuanceurs à partir de cet appel et qu’ils sont accessibles via des tables de nuanceur par toute liste de commandes déjà existante ou en cours d’exécution qui fait référence à un objet d’état plus ancien. L’utilisation des nouveaux nuanceurs ajoutés à l’objet d’état peut uniquement se produire à partir de commandes (telles que des appels DispatchRays ou ExecuteIndirect ) enregistrées dans une liste de commandes après l’appel à AddToStateObject.

Valeur retournée

S_OK de succès. E_INVALIDARG, E_OUTOFMEMORY en cas d’échec. La couche de débogage fournit des informations détaillées status.

Remarques

Pour plus d’informations, consultez AddToStateObject.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 10 Build 20348
Serveur minimal pris en charge Windows 10 Build 20348
En-tête d3d12.h
Bibliothèque d3d12.lib
DLL d3d12.dll