Метод ID3D11Device::CreateDomainShader (d3d11.h)
Создайте шейдер домена.
Синтаксис
HRESULT CreateDomainShader(
[in] const void *pShaderBytecode,
[in] SIZE_T BytecodeLength,
[in, optional] ID3D11ClassLinkage *pClassLinkage,
[out, optional] ID3D11DomainShader **ppDomainShader
);
Параметры
[in] pShaderBytecode
Тип: const void*
Указатель на скомпилированный шейдер.
[in] BytecodeLength
Тип: SIZE_T
Размер скомпилированного шейдера.
[in, optional] pClassLinkage
Тип: ID3D11ClassLinkage*
Указатель на интерфейс компоновки класса (см . ID3D11ClassLinkage); значение может иметь значение NULL.
[out, optional] ppDomainShader
Тип: ID3D11DomainShader**
Адрес указателя на интерфейс ID3D11DomainShader . Если значение равно NULL, будут проверены все остальные параметры, а если все параметры проходят проверку, этот API вернет S_FALSE вместо S_OK.
Возвращаемое значение
Тип: HRESULT
Этот метод возвращает один из следующих кодов возврата Direct3D 11.
Комментарии
Среда выполнения Direct3D 11.1, доступная начиная с Windows 8, предоставляет следующие новые функции для CreateDomainShader.
Следующие инструкции по модели шейдера 5.0 доступны только для шейдеров текстуры и вычислительных шейдеров в среде выполнения Direct3D 11.0. Для среды выполнения Direct3D 11.1, так как неупорядоченные представления доступа (UAV) доступны на всех этапах шейдера, эти инструкции можно использовать на всех этапах шейдера.
Таким образом, если вы используете следующие инструкции модели шейдера 5.0 в шейдере предметной области, можно успешно передать скомпилированный шейдер домена в pShaderBytecode. То есть вызов CreateDomainShader завершается успешно.
Если вы передаете скомпилированный шейдер в pShaderBytecode , использующий любую из следующих инструкций, на устройстве, которое не поддерживает БПЛА на каждом этапе шейдера (включая существующие драйверы, которые не реализованы для поддержки БПЛА на каждом этапе шейдера), createDomainShader завершается сбоем. CreateDomainShader также завершается ошибкой, если шейдер пытается использовать слот UAV за пределами набора слотов UAV, поддерживаемых оборудованием.
- dcl_uav_typed
- dcl_uav_raw
- dcl_uav_structured
- ld_raw
- ld_structured
- ld_uav_typed
- store_raw
- store_structured
- store_uav_typed
- sync_uglobal
- Все атомарные и непосредственные атомары (например, atomic_and и imm_atomic_and)
Требования
Требование | Значение |
---|---|
Целевая платформа | Windows |
Header | d3d11.h |
Библиотека | D3D11.lib |