29 size_t uniformBindingLocation = 0,
size_t samplerBindingLocation = 0)
virtual void initialize()=0
shared_ptr< class MslResourceBindingContext > MslResourceBindingContextPtr
Shared pointer to a MslResourceBindingContext.
virtual void emitDirectives(GenContext &context, ShaderStage &stage)=0
void enableSeparateBindingLocations(bool separateBindingLocation)
static MslResourceBindingContextPtr create(size_t uniformBindingLocation=0, size_t samplerBindingLocation=0)
virtual void emitResourceBindings(GenContext &context, const VariableBlock &uniforms, ShaderStage &stage)=0
virtual void emitStructuredResourceBindings(GenContext &context, const VariableBlock &uniforms, ShaderStage &stage, const std::string &structInstanceName, const std::string &arraySuffix=EMPTY_STRING)=0