HDK
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
SurfaceShaderNodeMsl.h
Go to the documentation of this file.
1
//
2
// Copyright Contributors to the MaterialX Project
3
// SPDX-License-Identifier: Apache-2.0
4
//
5
6
#ifndef MATERIALX_SURFACESHADERNODEMSL_H
7
#define MATERIALX_SURFACESHADERNODEMSL_H
8
9
#include <
MaterialXGenMsl/Export.h
>
10
#include <
MaterialXGenShader/Nodes/SourceCodeNode.h
>
11
12
MATERIALX_NAMESPACE_BEGIN
13
14
/// SurfaceShader node implementation for MSL
15
/// Used for all surface shaders implemented in source code.
16
class
MX_GENMSL_API
SurfaceShaderNodeMsl
:
public
SourceCodeNode
17
{
18
public
:
19
static
ShaderNodeImplPtr
create
();
20
21
const
string
&
getTarget
()
const override
;
22
23
void
createVariables
(
const
ShaderNode
& node,
GenContext
& context,
Shader
&
shader
)
const override
;
24
25
void
emitFunctionCall
(
const
ShaderNode
& node,
GenContext
& context,
ShaderStage
& stage)
const override
;
26
};
27
28
MATERIALX_NAMESPACE_END
29
30
#endif
ShaderNodeImplPtr
shared_ptr< ShaderNodeImpl > ShaderNodeImplPtr
Shared pointer to a ShaderNodeImpl.
Definition:
Library.h:40
MATERIALX_NAMESPACE_BEGIN
#define MATERIALX_NAMESPACE_BEGIN
Definition:
Generated.h:25
SourceCodeNode.h
SourceCodeNode::emitFunctionCall
void emitFunctionCall(const ShaderNode &node, GenContext &context, ShaderStage &stage) const override
Emit the function call or inline source code for given node instance in the given context...
SourceCodeNode
Definition:
SourceCodeNode.h:19
ShaderNodeImpl::getTarget
virtual const string & getTarget() const
Definition:
ShaderNodeImpl.h:39
ShaderNode
Definition:
ShaderNode.h:325
SurfaceShaderNodeMsl
Definition:
SurfaceShaderNodeMsl.h:16
SourceCodeNode::create
static ShaderNodeImplPtr create()
MX_GENMSL_API
#define MX_GENMSL_API
Definition:
Export.h:18
Export.h
shader
GLuint shader
Definition:
glcorearb.h:785
Shader
Definition:
Shader.h:32
GenContext
Definition:
GenContext.h:30
ShaderStage
Definition:
ShaderStage.h:138
MATERIALX_NAMESPACE_END
#define MATERIALX_NAMESPACE_END
Definition:
Generated.h:26
ShaderNodeImpl::createVariables
virtual void createVariables(const ShaderNode &node, GenContext &context, Shader &shader) const
MaterialXGenMsl
Nodes
SurfaceShaderNodeMsl.h
Generated on Sun Nov 17 2024 03:01:25 for HDK by
1.8.6