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 |