Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Создает кучу, которую можно использовать с размещенными и зарезервированными ресурсами.
Синтаксис
HRESULT CreateHeap(
[in] const D3D12_HEAP_DESC *pDesc,
[in] REFIID riid,
[out, optional] void **ppvHeap
);
Параметры
[in] pDesc
Тип: const D3D12_HEAP_DESC*
Указатель на константную D3D12_HEAP_DESC структуру, описывающую кучу.
[in] riid
Тип: REFIID
Ссылка на глобальный уникальный идентификатор (GUID) интерфейса кучи для возврата в ppvHeap.
Хотя riidResource чаще всего является GUIDID3D12Heap, это может быть GUID любого интерфейса. Если объект ресурса не поддерживает интерфейс для этого GUID, создание завершается сбоем с E_NOINTERFACE.
[out, optional] ppvHeap
Тип: void**
Необязательный указатель на блок памяти, который получает запрошенный указатель интерфейса на созданный объект кучи.
PpvHeap может иметь значение nullptr, чтобы включить тестирование возможностей. Если ppvHeap имеет значение nullptr, объект не создается, а S_FALSE возвращается, если pDesc является допустимым.
Возвращаемое значение
Тип: HRESULT
Если функция завершается успешно, она возвращает S_OK. В противном случае возвращается код ошибкиHRESULT.
| Возвращаемое значение | Описание |
|---|---|
| E_OUTOFMEMORY | Недостаточно памяти для создания кучи. |
Другие возможные значения см. в разделе Коды возврата Direct3D 12 .
Комментарии
CreateHeap создает кучу, которую можно использовать с размещенными и зарезервированными ресурсами.
Перед выпуском окончательной ссылки в кучу приложение должно убедиться, что GPU больше не будет считывать или записывать данные в эту кучу.
Размещенный объект ресурса содержит ссылку на кучу, в которой он создан; но зарезервированный ресурс не содержит ссылку на каждое сопоставление, выполненное с кучей.
Требования
| Целевая платформа | Windows |
| Header | d3d12.h |
| Библиотека | D3D12.lib |
| DLL | D3D12.dll |