6 #ifndef MATERIALX_HWLIGHTSHADERS_H
7 #define MATERIALX_HWLIGHTSHADERS_H
31 return std::make_shared<HwLightShaders>();
56 auto it = _shaders.find(
type);
57 return it != _shaders.end() ? it->second.get() :
nullptr;
61 const std::unordered_map<unsigned int, ShaderNodePtr>&
get()
const
67 std::unordered_map<unsigned int, ShaderNodePtr>
_shaders;
shared_ptr< class HwLightShaders > HwLightShadersPtr
Shared pointer to a HwLightShaders.
void clear()
Clear all light shaders previously bound.
#define MATERIALX_NAMESPACE_BEGIN
GLint GLint GLsizei GLint GLenum GLenum type
void unbind(unsigned int type)
Unbind a light shader previously bound to a light type id.
shared_ptr< class ShaderNode > ShaderNodePtr
Shared pointer to a ShaderNode.
std::unordered_map< unsigned int, ShaderNodePtr > _shaders
void bind(unsigned int type, ShaderNodePtr shader)
Bind a light shader to a light type id.
#define MATERIALX_NAMESPACE_END
static HwLightShadersPtr create()
Create and return a new instance.