本文整理汇总了C++中TRefCountPtr::GetResourceBindingDesc方法的典型用法代码示例。如果您正苦于以下问题:C++ TRefCountPtr::GetResourceBindingDesc方法的具体用法?C++ TRefCountPtr::GetResourceBindingDesc怎么用?C++ TRefCountPtr::GetResourceBindingDesc使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TRefCountPtr
的用法示例。
在下文中一共展示了TRefCountPtr::GetResourceBindingDesc方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: GetShaderBindings
static void GetShaderBindings( TRefCountPtr<ID3D11ShaderReflection> Reflector, FSlateD3DShaderBindings& OutBindings )
{
D3D11_SHADER_DESC ShaderDesc;
Reflector->GetDesc( &ShaderDesc );
for( uint32 I = 0; I < ShaderDesc.BoundResources; ++I )
{
D3D11_SHADER_INPUT_BIND_DESC Desc;
Reflector->GetResourceBindingDesc( I, &Desc );
FSlateD3DShaderParameter* Param = FSlateShaderParameterMap::Get().Find( Desc.Name );
if( Param )
{
if( Desc.Type == D3D_SIT_TEXTURE )
{
OutBindings.ResourceViews.Add( (TSlateD3DTypedShaderParameter<ID3D11ShaderResourceView>*)Param );
}
else if( Desc.Type == D3D_SIT_CBUFFER )
{
OutBindings.ConstantBuffers.Add( (TSlateD3DTypedShaderParameter<ID3D11Buffer>*)Param );
}
else if( Desc.Type == D3D_SIT_SAMPLER )
{
OutBindings.SamplerStates.Add( (TSlateD3DTypedShaderParameter<ID3D11SamplerState>*)Param );
}
else
{
// unhandled param type
check(0);
}
}
else
{
// not registered
check(0);
}
}
}