6 #ifndef MATERIALX_WGSLSHADERGENERATOR_H
7 #define MATERIALX_WGSLSHADERGENERATOR_H
35 return std::make_shared<WgslShaderGenerator>(typeSystem ? typeSystem :
TypeSystem::create());
#define MATERIALX_NAMESPACE_BEGIN
static TypeSystemPtr create()
Create a new type system.
virtual void emitInput(const ShaderInput *input, GenContext &context, ShaderStage &stage) const
shared_ptr< class TypeSystem > TypeSystemPtr
static const string LIGHTDATA_TYPEVAR_STRING
const string & getLightDataTypevarString() const override
void emitDirectives(GenContext &context, ShaderStage &stage) const override
shared_ptr< class WgslShaderGenerator > WgslShaderGeneratorPtr
#define MATERIALX_NAMESPACE_END
static const string LIGHTDATA_TYPEVAR_STRING
virtual void emitFunctionDefinitionParameter(const ShaderPort *shaderPort, bool isOutput, GenContext &context, ShaderStage &stage) const
shared_ptr< ShaderGenerator > ShaderGeneratorPtr
Shared pointer to a ShaderGenerator.
static ShaderGeneratorPtr create(TypeSystemPtr typeSystem=nullptr)