функция обратного вызова PFND3D12DDI_SHADERCACHESTOREVALUE_CB_0021 (d3d12umddi.h)
Функция обратного вызова pfnShaderCacheStoreValueCb сохраняет значение в кэше шейдера.
Синтаксис
PFND3D12DDI_SHADERCACHESTOREVALUE_CB_0021 Pfnd3d12ddiShadercachestorevalueCb0021;
HRESULT Pfnd3d12ddiShadercachestorevalueCb0021(
D3D12DDI_HRTDEVICE hRTDevice,
D3D12DDI_HRTPIPELINESTATE hRTPSO,
const D3D12DDI_SHADERCACHE_HASH *pPrecomputedHash,
const void *pKey,
SIZE_T KeyLen,
const void *pValue,
SIZE_T ValueLen
)
{...}
Параметры
hRTDevice
[in] Обработка представления устройства в среде выполнения.
hRTPSO
[in] Обработка представления объекта состояния конвейера в среде выполнения.
pPrecomputedHash
[in] Указатель на структуру D3D12DDI_SHADERCACHE_HASH , которая содержит предварительно вычисляемое хэш-значение, используемое для вставки кэша.
pKey
[in] Указатель на ключ, связанный со значением, которое будет храниться в кэше шейдера драйвера. Ключ однозначно идентифицирует данные шейдера в кэше.
KeyLen
[in] Длина ключа, на который указывает pKey , в байтах.
pValue
[in] Указатель на данные, которые будут храниться в кэше шейдера.
ValueLen
[in] Длина буфера, на который указывает pValue , в байтах.
Возвращаемое значение
Если эта функция обратного вызова завершается успешно, она возвращает S_OK. В противном случае возвращается код ошибки HRESULT .
Комментарии
Обратные вызовы pfnShaderCacheStoreValueCb и pfnShaderCacheGetValueCb используются для хранения и извлечения скомпилированного кода шейдера или других связанных с шейдерами данных в кэше шейдеров драйвера. Кэширование помогает повысить производительность, уменьшая необходимость повторной компиляции шейдеров, которые уже были скомпилированы и кэшированы.
Получите доступ к этому обратному вызову с помощью структуры D3D12DDI_SHADERCACHE_CALLBACKS_0021 .
Требования
Требование | Значение |
---|---|
Целевая платформа | Windows |
Header | d3d12umddi.h (включая D3d12umddi.h) |