функция обратного вызова PFND3D12DDI_GET_SHADER_IDENTIFIER_0054 (d3d12umddi.h)
Извлекает уникальный идентификатор шейдера, который можно использовать в записи шейдера.
Синтаксис
PFND3D12DDI_GET_SHADER_IDENTIFIER_0054 Pfnd3d12ddiGetShaderIdentifier0054;
void * Pfnd3d12ddiGetShaderIdentifier0054(
D3D12DDI_HSTATEOBJECT_0054 unnamedParam1,
LPCWSTR pExportName
)
{...}
Параметры
unnamedParam1
Дескриптор объекта состояния. Объект состояния может быть коллекцией или объектом состояния конвейера трассировки лучей.
pExportName
Точка входа в объекте состояния, для которого требуется получить идентификатор.
Возвращаемое значение
Возвращает указатель на идентификатор шейдера. Если шейдер не полностью разрешен в объекте состояния, возвращаемое значение равно nullptr.
Комментарии
Возвращаемые данные действительны до тех пор, пока объект состояния, из который они поступили, является допустимым. Размер возвращаемых данных задается функцией обратного вызова GetShaderStackSize . Приложения должны копировать и кэшировать эти данные, чтобы избежать затрат на их поиск в объекте состояния, если их потребуется извлечь много раз. Место, где фактически используется идентификатор, находится в записях шейдера в таблицах шейдеров в памяти GPU, которую приложение заполняет.
Сами данные глобально идентифицируют шейдер, поэтому даже если шейдер отображается в другом объекте состояния (с теми же связями, что и любые корневые сигнатуры), он будет иметь тот же идентификатор.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 10, версия 1809 |
Верхняя часть | d3d12umddi.h |