HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
HwConstants.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_HWCONSTANTS_H
7 #define MATERIALX_HWCONSTANTS_H
8 
9 /// @file
10 /// Hardware shader generator constants
11 
12 #include <MaterialXGenHw/Export.h>
13 
14 #include <MaterialXCore/Value.h>
15 
17 
18 /*
19 The HW shader generators have a number of predefined variables (inputs and uniforms) with binding rules.
20 When these are used by a shader the application must bind them to the expected data. The following table is
21 a listing of the variables with a description of what data they should be bound to.
22 
23 However, different renderers can have different requirements on naming conventions for these variables.
24 In order to facilitate this the generators will use token substitution for naming the variables. The
25 first column below shows the token names that should be used in source code before the token substitution
26 is done. The second row shows the real identifier names that will be used by default after substitution.
27 An generator can override these identifier names in order to use a custom naming convention for these.
28 Overriding identifier names is done by changing the entries in the identifiers map given to the function
29 replaceIdentifiers(), which is handling the token substitution on a shader stage.
30 
31 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
32  TOKEN NAME DEFAULT IDENTIFIER NAME TYPE BINDING
33 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
34 
35 Vertex input variables :
36  $inPosition i_position vec3 Vertex position in object space
37  $inNormal i_normal vec3 Vertex normal in object space
38  $inTangent i_tangent vec3 Vertex tangent in object space
39  $inBitangent i_bitangent vec3 Vertex bitangent in object space
40  $inTexcoord_N i_texcoord_N vec2 Vertex texture coordinate for the N:th uv set
41  $inColor_N i_color_N vec4 Vertex color for the N:th color set (RGBA)
42 
43 Uniform variables :
44  $worldMatrix u_worldMatrix mat4 World transformation
45  $worldInverseMatrix u_worldInverseMatrix mat4 World transformation, inverted
46  $worldTransposeMatrix u_worldTransposeMatrix mat4 World transformation, transposed
47  $worldInverseTransposeMatrix u_worldInverseTransposeMatrix mat4 World transformation, inverted and transposed
48  $viewMatrix u_viewMatrix mat4 View transformation
49  $viewInverseMatrix u_viewInverseMatrix mat4 View transformation, inverted
50  $viewTransposeMatrix u_viewTransposeMatrix mat4 View transformation, transposed
51  $viewInverseTransposeMatrix u_viewInverseTransposeMatrix mat4 View transformation, inverted and transposed
52  $projectionMatrix u_projectionMatrix mat4 Projection transformation
53  $projectionInverseMatrix u_projectionInverseMatrix mat4 Projection transformation, inverted
54  $projectionTransposeMatrix u_projectionTransposeMatrix mat4 Projection transformation, transposed
55  $projectionInverseTransposeMatrix u_projectionInverseTransposeMatrix mat4 Projection transformation, inverted and transposed
56  $worldViewMatrix u_worldViewMatrix mat4 World-view transformation
57  $viewProjectionMatrix u_viewProjectionMatrix mat4 View-projection transformation
58  $worldViewProjectionMatrix u_worldViewProjectionMatrix mat4 World-view-projection transformation
59  $viewPosition u_viewPosition vec3 World-space position of the view (camera)
60  $viewDirection u_viewDirection vec3 World-space direction of the view (camera)
61  $frame u_frame float The current frame number as defined by the host application
62  $time u_time float The current time in seconds
63  $geomprop_<name> u_geomprop_<name> <type> A named property of given <type> where <name> is the name of the variable on the geometry
64  $numActiveLightSources u_numActiveLightSources int The number of currently active light sources. Note that in shader this is clamped against
65  the maximum allowed number of lights sources. The maximum number is set by the generation
66  option GenOptions.hwMaxActiveLightSources.
67  $lightData[] u_lightData[] struct Array of struct LightData holding parameters for active light sources.
68  The LightData struct is built dynamically depending on requirements for
69  bound light shaders.
70  $envMatrix u_envMatrix mat4 Rotation matrix for the environment.
71  $envIrradiance u_envIrradiance sampler2D Sampler for the texture used for diffuse environment lighting.
72  $envIrradianceSampler2D u_envIrradiance sampler2D For split texture and sampler, takes form of sampler2D(tex, sampler)
73  $envRadiance u_envRadiance sampler2D Sampler for the texture used for specular environment lighting.
74  $envRadianceSampler2D u_envRadiance sampler2D For split texture and sampler, takes form of sampler2D(tex, sampler)
75  $envLightIntensity u_envLightIntensity float Linear multiplier for environment lighting
76  $envRadianceMips u_envRadianceMips int Number of mipmaps used on the specular environment texture.
77  $envRadianceSamples u_envRadianceSamples int Samples to use if Filtered Importance Sampling is used for specular environment lighting.
78  $texSamplerSampler2D tex_sampler sampler2D Texture sampler2D parameter. For split texture and sampler, calls sampler2D(tex_texture, tex_sampler).
79  $texSamplerSignature sampler2D tex_sampler signature For function signature declaration.
80 
81 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
82 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
83 */
84 
85 /// HW specific identifiers.
86 namespace HW
87 {
88 /// Token identifiers
89 extern MX_GENHW_API const string T_IN_POSITION;
90 extern MX_GENHW_API const string T_IN_NORMAL;
91 extern MX_GENHW_API const string T_IN_TANGENT;
92 extern MX_GENHW_API const string T_IN_BITANGENT;
93 extern MX_GENHW_API const string T_IN_TEXCOORD;
94 extern MX_GENHW_API const string T_IN_GEOMPROP;
95 extern MX_GENHW_API const string T_IN_COLOR;
96 extern MX_GENHW_API const string T_POSITION_WORLD;
97 extern MX_GENHW_API const string T_NORMAL_WORLD;
98 extern MX_GENHW_API const string T_TANGENT_WORLD;
99 extern MX_GENHW_API const string T_BITANGENT_WORLD;
100 extern MX_GENHW_API const string T_POSITION_OBJECT;
101 extern MX_GENHW_API const string T_NORMAL_OBJECT;
102 extern MX_GENHW_API const string T_TANGENT_OBJECT;
103 extern MX_GENHW_API const string T_BITANGENT_OBJECT;
104 extern MX_GENHW_API const string T_TEXCOORD;
105 extern MX_GENHW_API const string T_COLOR;
106 extern MX_GENHW_API const string T_WORLD_MATRIX;
107 extern MX_GENHW_API const string T_WORLD_INVERSE_MATRIX;
108 extern MX_GENHW_API const string T_WORLD_TRANSPOSE_MATRIX;
110 extern MX_GENHW_API const string T_VIEW_MATRIX;
111 extern MX_GENHW_API const string T_VIEW_INVERSE_MATRIX;
112 extern MX_GENHW_API const string T_VIEW_TRANSPOSE_MATRIX;
114 extern MX_GENHW_API const string T_PROJ_MATRIX;
115 extern MX_GENHW_API const string T_PROJ_INVERSE_MATRIX;
116 extern MX_GENHW_API const string T_PROJ_TRANSPOSE_MATRIX;
118 extern MX_GENHW_API const string T_WORLD_VIEW_MATRIX;
119 extern MX_GENHW_API const string T_VIEW_PROJECTION_MATRIX;
120 extern MX_GENHW_API const string T_WORLD_VIEW_PROJECTION_MATRIX;
121 extern MX_GENHW_API const string T_VIEW_POSITION;
122 extern MX_GENHW_API const string T_VIEW_DIRECTION;
123 extern MX_GENHW_API const string T_FRAME;
124 extern MX_GENHW_API const string T_TIME;
125 extern MX_GENHW_API const string T_GEOMPROP;
126 extern MX_GENHW_API const string T_ALPHA_THRESHOLD;
127 extern MX_GENHW_API const string T_NUM_ACTIVE_LIGHT_SOURCES;
128 extern MX_GENHW_API const string T_ENV_MATRIX;
129 extern MX_GENHW_API const string T_ENV_RADIANCE;
130 extern MX_GENHW_API const string T_ENV_RADIANCE_SAMPLER2D;
131 extern MX_GENHW_API const string T_ENV_RADIANCE_MIPS;
132 extern MX_GENHW_API const string T_ENV_RADIANCE_SAMPLES;
133 extern MX_GENHW_API const string T_ENV_IRRADIANCE;
134 extern MX_GENHW_API const string T_ENV_IRRADIANCE_SAMPLER2D;
135 extern MX_GENHW_API const string T_ENV_LIGHT_INTENSITY;
136 extern MX_GENHW_API const string T_ENV_PREFILTER_MIP;
137 extern MX_GENHW_API const string T_REFRACTION_TWO_SIDED;
138 extern MX_GENHW_API const string T_ALBEDO_TABLE;
139 extern MX_GENHW_API const string T_ALBEDO_TABLE_SIZE;
140 extern MX_GENHW_API const string T_AMB_OCC_MAP;
141 extern MX_GENHW_API const string T_AMB_OCC_GAIN;
142 extern MX_GENHW_API const string T_SHADOW_MAP;
143 extern MX_GENHW_API const string T_SHADOW_MATRIX;
144 extern MX_GENHW_API const string T_VERTEX_DATA_INSTANCE;
145 extern MX_GENHW_API const string T_LIGHT_DATA_INSTANCE;
146 extern MX_GENHW_API const string T_TEX_SAMPLER_SAMPLER2D;
147 extern MX_GENHW_API const string T_TEX_SAMPLER_SIGNATURE;
148 extern MX_GENHW_API const string T_CLOSURE_DATA_CONSTRUCTOR;
149 
150 /// Default names for identifiers.
151 /// Replacing above tokens in final code.
152 extern MX_GENHW_API const string IN_POSITION;
153 extern MX_GENHW_API const string IN_NORMAL;
154 extern MX_GENHW_API const string IN_TANGENT;
155 extern MX_GENHW_API const string IN_BITANGENT;
156 extern MX_GENHW_API const string IN_TEXCOORD;
157 extern MX_GENHW_API const string IN_GEOMPROP;
158 extern MX_GENHW_API const string IN_COLOR;
159 extern MX_GENHW_API const string POSITION_WORLD;
160 extern MX_GENHW_API const string NORMAL_WORLD;
161 extern MX_GENHW_API const string TANGENT_WORLD;
162 extern MX_GENHW_API const string BITANGENT_WORLD;
163 extern MX_GENHW_API const string POSITION_OBJECT;
164 extern MX_GENHW_API const string NORMAL_OBJECT;
165 extern MX_GENHW_API const string TANGENT_OBJECT;
166 extern MX_GENHW_API const string BITANGENT_OBJECT;
167 extern MX_GENHW_API const string TEXCOORD;
168 extern MX_GENHW_API const string COLOR;
169 extern MX_GENHW_API const string WORLD_MATRIX;
170 extern MX_GENHW_API const string WORLD_INVERSE_MATRIX;
171 extern MX_GENHW_API const string WORLD_TRANSPOSE_MATRIX;
172 extern MX_GENHW_API const string WORLD_INVERSE_TRANSPOSE_MATRIX;
173 extern MX_GENHW_API const string VIEW_MATRIX;
174 extern MX_GENHW_API const string VIEW_INVERSE_MATRIX;
175 extern MX_GENHW_API const string VIEW_TRANSPOSE_MATRIX;
176 extern MX_GENHW_API const string VIEW_INVERSE_TRANSPOSE_MATRIX;
177 extern MX_GENHW_API const string PROJ_MATRIX;
178 extern MX_GENHW_API const string PROJ_INVERSE_MATRIX;
179 extern MX_GENHW_API const string PROJ_TRANSPOSE_MATRIX;
180 extern MX_GENHW_API const string PROJ_INVERSE_TRANSPOSE_MATRIX;
181 extern MX_GENHW_API const string WORLD_VIEW_MATRIX;
182 extern MX_GENHW_API const string VIEW_PROJECTION_MATRIX;
183 extern MX_GENHW_API const string WORLD_VIEW_PROJECTION_MATRIX;
184 extern MX_GENHW_API const string VIEW_POSITION;
185 extern MX_GENHW_API const string VIEW_DIRECTION;
186 extern MX_GENHW_API const string FRAME;
187 extern MX_GENHW_API const string TIME;
188 extern MX_GENHW_API const string GEOMPROP;
189 extern MX_GENHW_API const string ALPHA_THRESHOLD;
190 extern MX_GENHW_API const string NUM_ACTIVE_LIGHT_SOURCES;
191 extern MX_GENHW_API const string ENV_MATRIX;
192 extern MX_GENHW_API const string ENV_RADIANCE;
193 extern MX_GENHW_API const string ENV_RADIANCE_SPLIT;
194 extern MX_GENHW_API const string ENV_RADIANCE_SAMPLER2D;
195 extern MX_GENHW_API const string ENV_RADIANCE_SAMPLER2D_SPLIT;
196 extern MX_GENHW_API const string ENV_RADIANCE_MIPS;
197 extern MX_GENHW_API const string ENV_RADIANCE_SAMPLES;
198 extern MX_GENHW_API const string ENV_IRRADIANCE;
199 extern MX_GENHW_API const string ENV_IRRADIANCE_SPLIT;
200 extern MX_GENHW_API const string ENV_IRRADIANCE_SAMPLER2D;
201 extern MX_GENHW_API const string ENV_IRRADIANCE_SAMPLER2D_SPLIT;
202 extern MX_GENHW_API const string ENV_LIGHT_INTENSITY;
203 extern MX_GENHW_API const string ENV_PREFILTER_MIP;
204 extern MX_GENHW_API const string REFRACTION_TWO_SIDED;
205 extern MX_GENHW_API const string ALBEDO_TABLE;
206 extern MX_GENHW_API const string ALBEDO_TABLE_SIZE;
207 extern MX_GENHW_API const string AMB_OCC_MAP;
208 extern MX_GENHW_API const string AMB_OCC_GAIN;
209 extern MX_GENHW_API const string SHADOW_MAP;
210 extern MX_GENHW_API const string SHADOW_MATRIX;
211 extern MX_GENHW_API const string VERTEX_DATA_INSTANCE;
212 extern MX_GENHW_API const string LIGHT_DATA_INSTANCE;
213 extern MX_GENHW_API const string LIGHT_DATA_MAX_LIGHT_SOURCES;
214 
215 /// Texture sampler parameters (for both combined and separate values)
216 extern MX_GENHW_API const string TEX_SAMPLER_SAMPLER2D;
217 extern MX_GENHW_API const string TEX_SAMPLER_SAMPLER2D_SPLIT;
218 extern MX_GENHW_API const string TEX_SAMPLER_SAMPLER2D_MSL;
219 extern MX_GENHW_API const string TEX_SAMPLER_SIGNATURE;
220 extern MX_GENHW_API const string TEX_SAMPLER_SIGNATURE_SPLIT;
221 extern MX_GENHW_API const string TEX_SAMPLER_SIGNATURE_MSL;
222 
223 /// Variable blocks names.
224 extern MX_GENHW_API const string VERTEX_INPUTS; // Geometric inputs for vertex stage.
225 extern MX_GENHW_API const string VERTEX_DATA; // Connector block for data transfer from vertex stage to pixel stage.
226 extern MX_GENHW_API const string PRIVATE_UNIFORMS; // Uniform inputs set privately by application.
227 extern MX_GENHW_API const string PUBLIC_UNIFORMS; // Uniform inputs visible in UI and set by user.
228 extern MX_GENHW_API const string LIGHT_DATA; // Uniform inputs for light sources.
229 extern MX_GENHW_API const string PIXEL_OUTPUTS; // Outputs from the main/pixel stage.
230 
231 /// Variable names for lighting parameters.
232 extern MX_GENHW_API const string CLOSURE_DATA_TYPE;
233 extern MX_GENHW_API const string CLOSURE_DATA_ARG;
234 extern MX_GENHW_API const string DIR_N;
235 extern MX_GENHW_API const string DIR_L;
236 extern MX_GENHW_API const string DIR_V;
237 extern MX_GENHW_API const string WORLD_POSITION;
238 extern MX_GENHW_API const string OCCLUSION;
239 
240 /// Syntax for constructing ClosureData
241 extern MX_GENHW_API const string CLOSURE_DATA_CONSTRUCTOR;
242 
243 /// Attribute names.
244 extern MX_GENHW_API const string ATTR_TRANSPARENT;
245 
246 /// User data names.
247 extern MX_GENHW_API const string USER_DATA_LIGHT_SHADERS;
248 extern MX_GENHW_API const string USER_DATA_BINDING_CONTEXT;
249 
250 /// Type Descriptor for closure context data.
252 
253 /// Constant Values
258 
259 } // namespace HW
260 
262 
263 #endif
MX_GENHW_API const string VIEW_INVERSE_MATRIX
MX_GENHW_API const string TEXCOORD
MX_GENHW_API const string WORLD_INVERSE_TRANSPOSE_MATRIX
MX_GENHW_API const string T_LIGHT_DATA_INSTANCE
MX_GENHW_API const string WORLD_POSITION
MX_GENHW_API const string IN_NORMAL
MX_GENHW_API const TypedValue< Vector2 > VEC2_ZERO
Constant Values.
MX_GENHW_API const string POSITION_WORLD
MX_GENHW_API const string T_NUM_ACTIVE_LIGHT_SOURCES
MX_GENHW_API const string T_TANGENT_OBJECT
MX_GENHW_API const string T_ENV_LIGHT_INTENSITY
MX_GENHW_API const string T_ENV_MATRIX
MX_GENHW_API const string PROJ_MATRIX
MX_GENHW_API const string T_TANGENT_WORLD
MX_GENHW_API const string USER_DATA_LIGHT_SHADERS
User data names.
MX_GENHW_API const string FRAME
MX_GENHW_API const string TANGENT_OBJECT
MX_GENHW_API const string T_VIEW_PROJECTION_MATRIX
MX_GENHW_API const string NORMAL_WORLD
#define MATERIALX_NAMESPACE_BEGIN
Definition: Generated.h:25
MX_GENHW_API const string ENV_IRRADIANCE_SAMPLER2D
MX_GENHW_API const string ENV_IRRADIANCE
MX_GENHW_API const string NORMAL_OBJECT
MX_GENHW_API const TypedValue< Vector2 > VEC2_ONE
MX_GENHW_API const string TANGENT_WORLD
MX_GENHW_API const string T_WORLD_INVERSE_MATRIX
MX_GENHW_API const string ENV_RADIANCE_SAMPLER2D
MX_GENHW_API const string T_REFRACTION_TWO_SIDED
MX_GENHW_API const string AMB_OCC_MAP
MX_GENHW_API const string T_ENV_IRRADIANCE_SAMPLER2D
MX_GENHW_API const string T_TEX_SAMPLER_SIGNATURE
MX_GENHW_API const string ENV_PREFILTER_MIP
MX_GENHW_API const string TEX_SAMPLER_SAMPLER2D
Texture sampler parameters (for both combined and separate values)
MX_GENHW_API const string T_CLOSURE_DATA_CONSTRUCTOR
MX_GENHW_API const string T_NORMAL_WORLD
MX_GENHW_API const string T_PROJ_INVERSE_TRANSPOSE_MATRIX
MX_GENHW_API const string T_TIME
MX_GENHW_API const string IN_GEOMPROP
MX_GENHW_API const string T_ALPHA_THRESHOLD
MX_GENHW_API const string ALBEDO_TABLE_SIZE
MX_GENHW_API const string PROJ_TRANSPOSE_MATRIX
MX_GENHW_API const string NUM_ACTIVE_LIGHT_SOURCES
MX_GENHW_API const string T_IN_TANGENT
MX_GENHW_API const string T_WORLD_INVERSE_TRANSPOSE_MATRIX
MX_GENHW_API const string T_IN_BITANGENT
MX_GENHW_API const string DIR_L
MX_GENHW_API const string T_POSITION_WORLD
MX_GENHW_API const string T_POSITION_OBJECT
MX_GENHW_API const string T_VIEW_INVERSE_MATRIX
MX_GENHW_API const string T_VIEW_DIRECTION
MX_GENHW_API const string T_ENV_RADIANCE
The class template for typed subclasses of Value.
Definition: Value.h:42
MX_GENHW_API const string T_BITANGENT_WORLD
MX_GENHW_API const string T_WORLD_VIEW_PROJECTION_MATRIX
MX_GENHW_API const string T_PROJ_TRANSPOSE_MATRIX
MX_GENHW_API const string ENV_RADIANCE
MX_GENHW_API const string DIR_N
MX_GENHW_API const string ENV_RADIANCE_SAMPLER2D_SPLIT
MX_GENHW_API const string T_IN_GEOMPROP
MX_GENHW_API const string T_ENV_PREFILTER_MIP
MX_GENHW_API const string T_TEXCOORD
MX_GENHW_API const string TEX_SAMPLER_SAMPLER2D_SPLIT
MX_GENHW_API const string T_PROJ_INVERSE_MATRIX
MX_GENHW_API const string BITANGENT_OBJECT
MX_GENHW_API const string WORLD_INVERSE_MATRIX
MX_GENHW_API const string T_WORLD_TRANSPOSE_MATRIX
MX_GENHW_API const string TEX_SAMPLER_SIGNATURE_SPLIT
MX_GENHW_API const string ENV_LIGHT_INTENSITY
MX_GENHW_API const string ENV_RADIANCE_SAMPLES
MX_GENHW_API const string T_ENV_IRRADIANCE
MX_GENHW_API const string CLOSURE_DATA_CONSTRUCTOR
Syntax for constructing ClosureData.
MX_GENHW_API const string PIXEL_OUTPUTS
MX_GENHW_API const string T_SHADOW_MATRIX
MX_GENHW_API const string WORLD_MATRIX
MX_GENHW_API const string VERTEX_INPUTS
Variable blocks names.
MX_GENHW_API const string ENV_MATRIX
MX_GENHW_API const string IN_TEXCOORD
MX_GENHW_API const string VIEW_DIRECTION
MX_GENHW_API const string ATTR_TRANSPARENT
Attribute names.
MX_GENHW_API const string T_ENV_RADIANCE_MIPS
MX_GENHW_API const TypedValue< Vector3 > VEC3_ZERO
MX_GENHW_API const string BITANGENT_WORLD
MX_GENHW_API const string IN_TANGENT
MX_GENHW_API const string ENV_IRRADIANCE_SAMPLER2D_SPLIT
MX_GENHW_API const string PROJ_INVERSE_MATRIX
MX_GENHW_API const string VIEW_PROJECTION_MATRIX
MX_GENHW_API const string VERTEX_DATA_INSTANCE
MX_GENHW_API const string LIGHT_DATA_MAX_LIGHT_SOURCES
MX_GENHW_API const string T_NORMAL_OBJECT
MX_GENHW_API const string WORLD_VIEW_PROJECTION_MATRIX
MX_GENHW_API const string T_ENV_RADIANCE_SAMPLER2D
MX_GENHW_API const string T_VIEW_INVERSE_TRANSPOSE_MATRIX
MX_GENHW_API const string ALBEDO_TABLE
MX_GENHW_API const string IN_POSITION
MX_GENHW_API const string COLOR
MX_GENHW_API const string SHADOW_MAP
MX_GENHW_API const string TEX_SAMPLER_SIGNATURE_MSL
MX_GENHW_API const string TEX_SAMPLER_SIGNATURE
MX_GENHW_API const string T_ALBEDO_TABLE
MX_GENHW_API const string T_PROJ_MATRIX
MX_GENHW_API const string T_COLOR
MX_GENHW_API const string ENV_RADIANCE_SPLIT
MX_GENHW_API const string T_VIEW_MATRIX
MX_GENHW_API const string T_ALBEDO_TABLE_SIZE
MX_GENHW_API const string GEOMPROP
MX_GENHW_API const string ENV_IRRADIANCE_SPLIT
MX_GENHW_API const string CLOSURE_DATA_ARG
MX_GENHW_API const string T_WORLD_MATRIX
MX_GENHW_API const string T_GEOMPROP
MX_GENHW_API const string WORLD_VIEW_MATRIX
MX_GENHW_API const string T_IN_COLOR
MX_GENHW_API const string T_FRAME
MX_GENHW_API const string USER_DATA_BINDING_CONTEXT
MX_GENHW_API const string T_AMB_OCC_MAP
MX_GENHW_API const string IN_BITANGENT
MX_GENHW_API const string T_VERTEX_DATA_INSTANCE
MX_GENHW_API const string AMB_OCC_GAIN
MX_GENHW_API const TypeDesc ClosureDataType
Type Descriptor for closure context data.
MX_GENHW_API const string VERTEX_DATA
MX_GENHW_API const string VIEW_MATRIX
MX_GENHW_API const string T_SHADOW_MAP
MX_GENHW_API const TypedValue< Vector3 > VEC3_ONE
MX_GENHW_API const string VIEW_TRANSPOSE_MATRIX
MX_GENHW_API const string T_TEX_SAMPLER_SAMPLER2D
MX_GENHW_API const string T_VIEW_POSITION
MX_GENHW_API const string T_AMB_OCC_GAIN
MX_GENHW_API const string OCCLUSION
MX_GENHW_API const string T_ENV_RADIANCE_SAMPLES
#define MATERIALX_NAMESPACE_END
Definition: Generated.h:26
MX_GENHW_API const string VIEW_INVERSE_TRANSPOSE_MATRIX
MX_GENHW_API const string LIGHT_DATA
MX_GENHW_API const string REFRACTION_TWO_SIDED
MX_GENHW_API const string ENV_RADIANCE_MIPS
#define MX_GENHW_API
Definition: Export.h:18
MX_GENHW_API const string SHADOW_MATRIX
MX_GENHW_API const string T_VIEW_TRANSPOSE_MATRIX
MX_GENHW_API const string CLOSURE_DATA_TYPE
Variable names for lighting parameters.
MX_GENHW_API const string T_IN_TEXCOORD
MX_GENHW_API const string WORLD_TRANSPOSE_MATRIX
MX_GENHW_API const string T_IN_NORMAL
MX_GENHW_API const string POSITION_OBJECT
MX_GENHW_API const string PUBLIC_UNIFORMS
MX_GENHW_API const string TEX_SAMPLER_SAMPLER2D_MSL
MX_GENHW_API const string T_IN_POSITION
Token identifiers.
MX_GENHW_API const string PROJ_INVERSE_TRANSPOSE_MATRIX
MX_GENHW_API const string T_WORLD_VIEW_MATRIX
MX_GENHW_API const string T_BITANGENT_OBJECT
MX_GENHW_API const string DIR_V
MX_GENHW_API const string IN_COLOR
MX_GENHW_API const string ALPHA_THRESHOLD
MX_GENHW_API const string LIGHT_DATA_INSTANCE
MX_GENHW_API const string TIME
MX_GENHW_API const string VIEW_POSITION
MX_GENHW_API const string PRIVATE_UNIFORMS