6#ifndef MATERIALX_GLSLRESOURCEBINDING_H
7#define MATERIALX_GLSLRESOURCEBINDING_H
30 size_t uniformBindingLocation=0,
size_t samplerBindingLocation=0)
32 return std::make_shared<GlslResourceBindingContext>(
33 uniformBindingLocation, samplerBindingLocation);
37 void initialize()
override;
47 ShaderStage& stage,
const std::string& structInstanceName,
48 const std::string& arraySuffix)
override;
51 void enableSeparateBindingLocations(
bool separateBindingLocation) { _separateBindingLocation = separateBindingLocation; };
58 size_t _hwUniformBindLocation = 0;
61 size_t _hwInitUniformBindLocation = 0;
64 size_t _hwSamplerBindLocation = 0;
67 size_t _hwInitSamplerBindLocation = 0;
72 bool _separateBindingLocation =
false;
shared_ptr< class GlslResourceBindingContext > GlslResourceBindingContextPtr
Shared pointer to a GlslResourceBindingContext.
Definition: GlslResourceBindingContext.h:20
Hardware shader generator base class.
std::set< string > StringSet
A set of strings.
Definition: Library.h:60
Macros for declaring imported and exported symbols.
A context class for shader generation.
Definition: GenContext.h:27
Class representing a resource binding for Glsl shader resources.
Definition: GlslResourceBindingContext.h:25
Class representing a context for resource binding for hardware resources.
Definition: HwShaderGenerator.h:422
A shader stage, containing the state and resulting source code for the stage.
Definition: ShaderStage.h:124
A block of variables in a shader stage.
Definition: ShaderStage.h:53