Функция D3DX10ReflectShader
Эта функция, которая создает объект отражения шейдера для получения сведений о скомпилированном шейдере, больше не существует. Вместо этого используйте D3DReflect или D3D11Reflect.
Синтаксис
HRESULT D3DX10ReflectShader(
_In_ const void *pShaderBytecode,
_In_ SIZE_T BytecodeLength,
_Out_ ID3D10ShaderReflection1 **ppReflector
);
Параметры
-
pShaderBytecode [in]
-
Тип: const void*
Указатель на скомпилированный шейдер. Чтобы получить этот указатель, см. статью Получение указателя на скомпилированный шейдер.
-
BytecodeLength [in]
-
Тип: SIZE_T
Длина pShaderBytecode.
-
ppReflector [out]
-
Тип: ID3D10ShaderReflection1**
Адрес интерфейса отражения шейдера (см . ID3D10ShaderReflection1 Interface.)
Возвращаемое значение
Тип: HRESULT
Возвращает один из следующих кодов возврата Direct3D 10.
Комментарии
Ниже приведен пример создания объекта отражения шейдера. В примере предполагается, что вы начинаете с скомпилированного шейдера (показано как
pVSBuf
который можно увидеть в примере HLSLWithoutFX10).
ID3D10ShaderReflection1* pIShaderReflection1 = NULL;
D3D10_SHADER_DESC desc;
hr = D3D10ReflectShader( (void*) pVSBuf->GetBufferPointer(), pVSBuf->GetBufferSize(),
&pIShaderReflection1 );
if( pIShaderReflection1 )
{
pIShaderReflection1->GetDesc( &desc );
}
Требования
Требование | Значение |
---|---|
Заголовок |
|
См. также раздел