Поделиться через


Метод ID3D12Device4::CreateHeap1 (d3d12.h)

Создает кучу (необязательно для защищенного сеанса), которую можно использовать с размещенными ресурсами и зарезервированными ресурсами. См. также ID3D12Device::CreateHeap.

Синтаксис

HRESULT CreateHeap1(
  [in]            const D3D12_HEAP_DESC          *pDesc,
  [in, optional]  ID3D12ProtectedResourceSession *pProtectedSession,
  [in]            REFIID                         riid,
  [out, optional] void                           **ppvHeap
);

Параметры

[in] pDesc

Тип: const D3D12_HEAP_DESC*

Указатель на константную D3D12_HEAP_DESC структуру, описывающую кучу.

[in, optional] pProtectedSession

Тип: ID3D12ProtectedResourceSession*

Необязательный указатель на объект, представляющий сеанс для защиты содержимого. Если это указано, этот сеанс указывает, что куча должна быть защищена. Вы можете получить ID3D12ProtectedResourceSession, вызвав ID3D12Device4::CreateProtectedResourceSession.

Не удается создать кучу с защищенным сеансом с флагом D3D12_HEAP_FLAG_SHARED_CROSS_ADAPTER.

[in] riid

Тип: REFIID

Ссылка на глобальный уникальный идентификатор (GUID) интерфейса кучи, возвращаемого в ppvHeap.

Хотя riidResource чаще всего является GUIDID3D12Heap, это может быть GUID любого интерфейса. Если объект ресурса не поддерживает интерфейс для этого GUID, создание завершается сбоем с E_NOINTERFACE.

[out, optional] ppvHeap

Тип: void**

Необязательный указатель на блок памяти, который получает запрошенный указатель интерфейса на созданный объект кучи.

ppvHeap можно nullptr, чтобы включить тестирование возможностей. Если ppvHeapnullptr, объект не создается и S_FALSE возвращается, если pDesc действительна.

Возвращаемое значение

Тип: HRESULT

Если функция успешно выполнена, она возвращает S_OK. В противном случае возвращается кодошибки HRESULT.

Возвращаемое значение Описание
E_OUTOFMEMORY Недостаточно памяти для создания кучи.

См. коды возврата Direct3D 12 для других возможных возвращаемых значений.

Замечания

CreateHeap1 создает кучу, которую можно использовать с размещенными ресурсами и зарезервированными ресурсами.

Перед выпуском окончательной ссылки на кучу приложение должно убедиться, что GPU больше не будет читать или записывать в эту кучу.

Объект размещенного ресурса содержит ссылку на кучу, в которой она создается; но зарезервированный ресурс не содержит ссылку для каждого сопоставления, сделанного в кучу.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Сборка Windows 10 20348
минимальный поддерживаемый сервер Сборка Windows 10 20348
целевая платформа Виндоус
заголовка d3d12.h
библиотеки d3d12.lib
DLL d3d12.dll