IShaderResourceBinding struct
Shader resource binding interface.
Contents
- Reference
Base classes
- struct IObject
- Base interface for all dynamic objects in the engine.
Derived classes
- struct IShaderResourceBindingD3D11
- Exposes Direct3D11-specific functionality of a shader resource binding object.
- struct IShaderResourceBindingD3D12
- Exposes Direct3D12-specific functionality of a shader resource binding.
- struct IShaderResourceBindingGL
- Exposes OpenGL-specific functionality of a shader resource binding object.
- class IShaderResourceBindingMtl
- Exposes Metal-specific functionality of a shader resource binding object.
- struct IShaderResourceBindingVk
- Exposes Vulkan-specific functionality of a shader resource binding object.
Public functions
- auto GetPipelineResourceSignature() const -> struct IPipelineResourceSignature*METHOD() virtual
- Returns pointer to the referenced PSO object. Deprecated: use GetPipelineResourceSignature() instead.
- auto BindResources(Uint32 ShaderFlags, IResourceMapping* pResMapping, Uint32 Flags) -> void METHOD() virtual
- Binds mutable and dynamice resources using the resource mapping.
-
auto GetVariableByName(SHADER_
TYPE ShaderType, const char* Name) -> IShaderResourceVariable*METHOD() virtual - Returns variable.
-
auto GetVariableCount(SHADER_
TYPE ShaderType) const -> Uint32 METHOD() virtual - Returns the total variable count for the specific shader stage.
-
auto GetVariableByIndex(SHADER_
TYPE ShaderType, Uint32 Index) -> IShaderResourceVariable*METHOD() virtual - Returns variable.
- auto StaticResourcesInitialized() const -> bool METHOD() virtual
- Returns true if static resources have been initialized in this SRB.
Function documentation
struct IPipelineResourceSignature*METHOD() Diligent:: IShaderResourceBinding:: GetPipelineResourceSignature() const virtual
Returns pointer to the referenced PSO object. Deprecated: use GetPipelineResourceSignature() instead.
The method calls AddRef() on the returned interface, so Release() must be called to avoid memory leaks. Returns pointer to the referenced pipeline resource signature object. The method calls AddRef() on the returned interface, so Release() must be called to avoid memory leaks.
void METHOD() Diligent:: IShaderResourceBinding:: BindResources(Uint32 ShaderFlags,
IResourceMapping* pResMapping,
Uint32 Flags) virtual
Binds mutable and dynamice resources using the resource mapping.
| Parameters | |
|---|---|
| ShaderFlags in | - Flags that specify shader stages, for which resources will be bound. Any combination of Diligent:: |
| pResMapping in | - Shader resource mapping, where required resources will be looked up |
| Flags in | - Additional flags. See Diligent:: |
IShaderResourceVariable*METHOD() Diligent:: IShaderResourceBinding:: GetVariableByName(SHADER_ TYPE ShaderType,
const char* Name) virtual
Returns variable.
| Parameters | |
|---|---|
| ShaderType in | - Type of the shader to look up the variable. Must be one of Diligent:: |
| Name in | - Variable name |
Uint32 METHOD() Diligent:: IShaderResourceBinding:: GetVariableCount(SHADER_ TYPE ShaderType) const virtual
Returns the total variable count for the specific shader stage.
| Parameters | |
|---|---|
| ShaderType in | - Type of the shader. |
IShaderResourceVariable*METHOD() Diligent:: IShaderResourceBinding:: GetVariableByIndex(SHADER_ TYPE ShaderType,
Uint32 Index) virtual
Returns variable.
| Parameters | |
|---|---|
| ShaderType in | - Type of the shader to look up the variable. Must be one of Diligent:: |
| Index in | - Variable index. The index must be between 0 and the total number of variables in this shader stage as returned by IShaderResourceBinding:: |