ID3D12Device3::EnqueueMakeResident-Methode (d3d12.h)
Macht Objekte asynchron für das Gerät resident.
Syntax
HRESULT EnqueueMakeResident(
D3D12_RESIDENCY_FLAGS Flags,
UINT NumObjects,
[in] ID3D12Pageable * const *ppObjects,
[in] ID3D12Fence *pFenceToSignal,
UINT64 FenceValueToSignal
);
Parameter
Flags
Steuert, ob die Objekte als resident festgelegt werden sollen, wenn die Anwendung ihr Arbeitsspeicherbudget überschreitet.
NumObjects
Typ: UINT
Die Anzahl der Objekte im ppObjects-Array , die als Resident für das Gerät verwendet werden sollen.
[in] ppObjects
Typ: ID3D12Pageable*
Ein Zeiger auf einen Speicherblock; enthält ein Array von ID3D12Pageable-Schnittstellenzeigern für die Objekte.
Obwohl die meisten D3D12-Objekte von ID3D12Pageable erben, werden Residenzänderungen nur für Folgendes unterstützt:
- Deskriptorheaps
- Heaps
- Commit für Ressourcen
- Abfrageheaps
[in] pFenceToSignal
Typ: ID3D12Fence*
Ein Zeiger auf den Zaun, mit dem signalisiert wird, wenn die Arbeit abgeschlossen ist.
FenceValueToSignal
Typ: UINT64
Ein nicht signierter 64-Bit-Wert, der dem Zaun signalisiert wird, wenn die Arbeit abgeschlossen ist.
Rückgabewert
Typ: HRESULT
Diese Methode gibt einen der Direct3D 12-Rückgabecodes zurück.
Hinweise
EnqueueMakeResident führt die gleichen Aktionen wie MakeResident aus, wartet jedoch nicht, bis die Ressourcen als resident festgelegt werden. Stattdessen signalisiert EnqueueMakeResident einen Zaun, wenn die Arbeit abgeschlossen ist.
Das System lässt keine Arbeit zu, die auf die Ressourcen verweist, die mithilfe von EnqueueMakeResident vor dem Signal des Zauns als Resident festgelegt werden. Stattdessen wird bei Aufrufen dieser API garantiert der entsprechende Zaun in der richtigen Reihenfolge signalisiert, sodass derselbe Zaun vom Aufruf bis zum Aufruf verwendet werden kann.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | d3d12.h |
Bibliothek | D3D12.lib |
DLL | D3D12.dll |