MaterialX
1.38.2
source
MaterialXGenGlsl
Nodes
SurfaceShaderNodeGlsl.h
1
//
2
// TM & (c) 2017 Lucasfilm Entertainment Company Ltd. and Lucasfilm Ltd.
3
// All rights reserved. See LICENSE.txt for license.
4
//
5
6
#ifndef MATERIALX_SURFACESHADERNODEGLSL_H
7
#define MATERIALX_SURFACESHADERNODEGLSL_H
8
9
#include <
MaterialXGenGlsl/Export.h
>
10
#include <MaterialXGenShader/Nodes/SourceCodeNode.h>
11
12
namespace
MaterialX
13
{
14
17
class
MX_GENGLSL_API
SurfaceShaderNodeGlsl
:
public
SourceCodeNode
18
{
19
public
:
20
static
ShaderNodeImplPtr
create();
21
22
const
string
& getTarget()
const override
;
23
24
void
createVariables(
const
ShaderNode
& node,
GenContext
& context,
Shader
& shader)
const override
;
25
26
void
emitFunctionCall(
const
ShaderNode
& node,
GenContext
& context,
ShaderStage
& stage)
const override
;
27
};
28
29
}
// namespace MaterialX
30
31
#endif
Export.h
Macros for declaring imported and exported symbols.
MaterialX::ShaderNodeImplPtr
shared_ptr< ShaderNodeImpl > ShaderNodeImplPtr
Shared pointer to a ShaderNodeImpl.
Definition:
Library.h:40
MaterialX::GenContext
A context class for shader generation.
Definition:
GenContext.h:27
MaterialX::Shader
Class containing all data needed during shader generation.
Definition:
Shader.h:34
MaterialX::ShaderNode
Class representing a node in the shader generation DAG.
Definition:
ShaderNode.h:326
MaterialX::ShaderStage
A shader stage, containing the state and resulting source code for the stage.
Definition:
ShaderStage.h:124
MaterialX::SourceCodeNode
Node implementation using data-driven static source code.
Definition:
SourceCodeNode.h:18
MaterialX::SurfaceShaderNodeGlsl
SurfaceShader node implementation for GLSL Used for all surface shaders implemented in source code.
Definition:
SurfaceShaderNodeGlsl.h:18
Generated by
1.9.3