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
RE_Uniform.h
Go to the documentation of this file.
1
/*
2
* PROPRIETARY INFORMATION. This software is proprietary to
3
* Side Effects Software Inc., and is not to be reproduced,
4
* transmitted, or disclosed in any way without written permission.
5
*
6
* NAME: RE_Uniform.h (Library, C++)
7
*
8
* COMMENTS:
9
*/
10
11
#ifndef __RE_Uniform__
12
#define __RE_Uniform__
13
14
#include "
RE_API.h
"
15
16
#include <
UT/UT_Color.h
>
17
#include <
UT/UT_String.h
>
18
#include <
UT/UT_LinkList.h
>
19
#include "
RE_Types.h
"
20
#include "
RE_UniformNames.h
"
21
22
class
RE_Render
;
23
class
RE_Shader
;
24
25
// The members of this enumeration are used as indices into
26
// re_BuiltInUniform::theUniforms. Thus, changing this enumeration requires
27
// updating re_BuiltInUniform::theUniforms.
28
enum
RE_UniformBuiltIn
29
{
30
RE_UNIFORM_EMISSION
= 0,
31
RE_UNIFORM_SPECULAR
,
32
RE_UNIFORM_DIFFUSE
,
33
RE_UNIFORM_AMBIENT
,
34
35
RE_UNIFORM_MATERIAL_PASS
,
36
RE_UNIFORM_ALPHA_PASS
,
37
RE_UNIFORM_RENDER_PASS
,
38
RE_UNIFORM_MATERIAL_LAYER
,
39
RE_UNIFORM_MATERIAL_GROUP
,
40
RE_UNIFORM_MATERIAL_MASK
,
41
RE_UNIFORM_ALPHA_CUTOFF
,
42
RE_UNIFORM_SPLIT_GROUP
,
43
RE_UNIFORM_ONION_SKIN_GROUP
,
44
45
RE_UNIFORM_GHOST_COLOR
,
46
RE_UNIFORM_SELECT_COLOR
,
47
RE_UNIFORM_SELECT_SECOND_COLOR
,
48
RE_UNIFORM_SELECT_MODE
,
49
RE_UNIFORM_SELECT_INSTANCE
,
50
RE_UNIFORM_SELECTION_TYPE
,
51
RE_UNIFORM_FILL_SELECTION
,
52
RE_UNIFORM_COVERAGE_MASK
,
53
54
RE_UNIFORM_LIGHTING_ENABLED
,
55
RE_UNIFORM_LIGHT_MASK
,
56
RE_UNIFORM_REFLECT_ORIGIN
,
57
RE_UNIFORM_SCENE_IOR
,
58
59
RE_UNIFORM_VIEW_MATRIX
,
60
RE_UNIFORM_INV_VIEW_MATRIX
,
61
RE_UNIFORM_OBJECT_MATRIX
,
62
RE_UNIFORM_INV_OBJECT_MATRIX
,
63
RE_UNIFORM_NORMAL_MATRIX
,
64
RE_UNIFORM_PROJECT_MATRIX
,
65
RE_UNIFORM_INV_PROJECT_MATRIX
,
66
RE_UNIFORM_CAM_VIEW_MATRIX
,
67
RE_UNIFORM_CAM_PROJECT_MATRIX
,
68
RE_UNIFORM_OBJVIEW_MATRIX
,
69
RE_UNIFORM_SCREEN_SIZE
,
70
RE_UNIFORM_SAMPLES
,
71
RE_UNIFORM_IS_ORTHO
,
72
73
RE_UNIFORM_USE_DEPTH_MAP
,
74
RE_UNIFORM_DEPTH_MAP
,
75
RE_UNIFORM_DEPTH_PROJECT
,
76
RE_UNIFORM_DEPTH_RANGE
,
77
RE_UNIFORM_DEPTH_OFFSET
,
78
RE_UNIFORM_ZBUFFER_FAR
,
79
80
RE_UNIFORM_WIRE_OVER
,
81
RE_UNIFORM_WIRE_COLOR
,
82
RE_UNIFORM_WIRE_THICKNESS
,
83
RE_UNIFORM_CONST_COLOR
,
84
RE_UNIFORM_CONST_COLOR_MAP
,
85
RE_UNIFORM_USE_CONST_COLOR_MAP
,
86
87
RE_UNIFORM_DECORATION_SCALE
,
88
RE_UNIFORM_DECORATION_FONT_PARMS
,
89
RE_UNIFORM_DECORATION_VISIBILITY
,
90
RE_UNIFORM_DECORATION_LOCATE
,
91
RE_UNIFORM_DECORATION_INSTANCE
,
92
93
RE_UNIFORM_PRIM_DIVISOR
,
94
RE_UNIFORM_PRIM_BASE
,
95
RE_UNIFORM_VERTEX_OFFSET
,
96
RE_UNIFORM_SELECTION_BASE
,
97
RE_UNIFORM_INSTANCE_BASE
,
98
RE_UNIFORM_PRIM_CONSTANT_ID
,
99
RE_UNIFORM_USE_INSTANCE_PRIM_ID
,
100
101
RE_UNIFORM_PICK_BASE_ID
,
102
RE_UNIFORM_PICK_COMPONENT_ID
,
103
RE_UNIFORM_PICK_AREA
,
104
RE_UNIFORM_PICK_HAS_MAP
,
105
RE_UNIFORM_PICK_MAP
,
106
RE_UNIFORM_PICK_BUFFER_INFO
,
107
RE_UNIFORM_PICK_BUFFER
,
108
RE_UNIFORM_SNAP_DISTANCES
,
109
RE_UNIFORM_SNAP_PARMS
,
110
111
RE_UNIFORM_COLOR_RAMP
,
112
RE_UNIFORM_COLOR_RAMP_ENABLE
,
113
RE_UNIFORM_COLOR_RANGE
,
114
RE_UNIFORM_COLOR_IGNORE_GEO
,
115
116
RE_UNIFORM_UV_FILL_BACKFACES
,
117
RE_UNIFORM_UV_BACKFACES_COLOR
,
118
RE_UNIFORM_UV_BACKFACES_SEL_COLOR
,
119
RE_UNIFORM_UV_FILL_ALPHA
,
120
121
RE_UNIFORM_MAX_LOCATED_ID
,
122
RE_UNIFORM_MIN_LOCATED_ID
,
123
RE_UNIFORM_USE_LOCATED_MAP
,
124
RE_UNIFORM_LOCATED_MAP
,
125
126
RE_UNIFORM_NUM_BONE_TRANSFORMS
,
127
RE_UNIFORM_NUM_BLEND_SHAPES
,
128
RE_UNIFORM_BLEND_SHAPE_VERTEX_COUNT
,
129
130
RE_UNIFORM_COLOR_XFORM
,
131
RE_UNIFORM_COLOR_XFORM_REF_VEC
,
132
133
RE_UNIFORM_DEPTH_OCCLUSION
,
134
135
RE_UNIFORM_VISIBLE_FLAG
,
136
137
RE_UNIFORM_HAS_SCENE_ENV_MAP
,
138
139
RE_UNIFORM_BUILT_IN__count
140
};
141
#define RE_UNIFORM_CUSTOM RE_UNIFORM_BUILT_IN__count
142
143
// RE_Uniform::typeTypeSizes expects this ordering. If you modify this
144
// enumeration, make sure that you also modify 'theTypeSizes' initialization.
145
enum
RE_UniformType
146
{
147
RE_UNIFORM_INVALID
= -1,
148
RE_UNIFORM_FLOAT
= 0,
149
RE_UNIFORM_FLOAT_VEC2
,
150
RE_UNIFORM_FLOAT_VEC3
,
151
RE_UNIFORM_FLOAT_VEC4
,
152
RE_UNIFORM_DOUBLE
,
153
RE_UNIFORM_DOUBLE_VEC2
,
154
RE_UNIFORM_DOUBLE_VEC3
,
155
RE_UNIFORM_DOUBLE_VEC4
,
156
RE_UNIFORM_INT
,
157
RE_UNIFORM_INT_VEC2
,
158
RE_UNIFORM_INT_VEC3
,
159
RE_UNIFORM_INT_VEC4
,
160
RE_UNIFORM_UNSIGNED_INT
,
161
RE_UNIFORM_UNSIGNED_INT_VEC2
,
162
RE_UNIFORM_UNSIGNED_INT_VEC3
,
163
RE_UNIFORM_UNSIGNED_INT_VEC4
,
164
RE_UNIFORM_UNSIGNED_INT64
,
165
RE_UNIFORM_BOOL
,
166
RE_UNIFORM_BOOL_VEC2
,
167
RE_UNIFORM_BOOL_VEC3
,
168
RE_UNIFORM_BOOL_VEC4
,
169
RE_UNIFORM_FLOAT_MAT2
,
170
RE_UNIFORM_FLOAT_MAT3
,
171
RE_UNIFORM_FLOAT_MAT4
,
172
RE_UNIFORM_DOUBLE_MAT2
,
173
RE_UNIFORM_DOUBLE_MAT3
,
174
RE_UNIFORM_DOUBLE_MAT4
,
175
RE_UNIFORM_SAMPLER_1D
,
176
RE_UNIFORM_SAMPLER_2D
,
177
RE_UNIFORM_SAMPLER_3D
,
178
RE_UNIFORM_SAMPLER_CUBE
,
179
RE_UNIFORM_SAMPLER_RECTANGLE
,
180
RE_UNIFORM_SAMPLER_1D_ARRAY
,
181
RE_UNIFORM_SAMPLER_2D_ARRAY
,
182
RE_UNIFORM_SAMPLER_CUBE_ARRAY
,
183
RE_UNIFORM_SAMPLER_2D_MULTISAMPLE
,
184
RE_UNIFORM_SAMPLER_2D_SHADOW
,
185
RE_UNIFORM_SAMPLER_BUFFER
,
186
RE_UNIFORM_INT_SAMPLER_BUFFER
,
187
RE_UNIFORM_UNSIGNED_INT_SAMPLER_BUFFER
,
188
RE_UNIFORM_IMAGE_1D
,
189
RE_UNIFORM_IMAGE_2D
,
190
RE_UNIFORM_IMAGE_3D
,
191
RE_UNIFORM_IMAGE_CUBE
,
192
RE_UNIFORM_IMAGE_RECTANGLE
,
193
RE_UNIFORM_IMAGE_BUFFER
,
194
RE_UNIFORM_IMAGE_1D_ARRAY
,
195
RE_UNIFORM_IMAGE_2D_ARRAY
,
196
RE_UNIFORM_IMAGE_CUBE_MAP_ARRAY
,
197
RE_UNIFORM_IMAGE_2D_MULTISAMPLE
,
198
RE_UNIFORM_IMAGE_2D_MULTISAMPLE_ARRAY
,
199
RE_UNIFORM_IMAGE_INT_1D
,
200
RE_UNIFORM_IMAGE_INT_2D
,
201
RE_UNIFORM_IMAGE_INT_3D
,
202
RE_UNIFORM_IMAGE_INT_RECTANGLE
,
203
RE_UNIFORM_IMAGE_INT_CUBE
,
204
RE_UNIFORM_IMAGE_INT_BUFFER
,
205
RE_UNIFORM_IMAGE_INT_1D_ARRAY
,
206
RE_UNIFORM_IMAGE_INT_2D_ARRAY
,
207
RE_UNIFORM_IMAGE_INT_CUBE_MAP_ARRAY
,
208
RE_UNIFORM_IMAGE_INT_2D_MULTISAMPLE
,
209
RE_UNIFORM_IMAGE_INT_2D_MULTISAMPLE_ARRAY
,
210
RE_UNIFORM_IMAGE_UINT_1D
,
211
RE_UNIFORM_IMAGE_UINT_2D
,
212
RE_UNIFORM_IMAGE_UINT_3D
,
213
RE_UNIFORM_IMAGE_UINT_RECTANGLE
,
214
RE_UNIFORM_IMAGE_UINT_CUBE
,
215
RE_UNIFORM_IMAGE_UINT_BUFFER
,
216
RE_UNIFORM_IMAGE_UINT_1D_ARRAY
,
217
RE_UNIFORM_IMAGE_UINT_2D_ARRAY
,
218
RE_UNIFORM_IMAGE_UINT_CUBE_MAP_ARRAY
,
219
RE_UNIFORM_IMAGE_UINT_2D_MULTISAMPLE
,
220
RE_UNIFORM_IMAGE_UINT_2D_MULTISAMPLE_ARRAY
,
221
222
RE_UNIFORM_TYPE__count
223
};
224
225
class
RE_UniformStackEntry
;
226
227
class
RE_API
RE_Uniform
:
public
UT_LinkNode
228
{
229
public
:
230
// 'size' is the array size.
231
RE_Uniform
(
const
char
*
name
,
RE_UniformType
type
,
int
size
= 1);
232
RE_Uniform
(
RE_UniformBuiltIn
built_in,
int
size
);
233
~
RE_Uniform
()
override
;
234
235
bool
operator==
(
const
RE_Uniform
&uniform)
const
;
236
237
// Removes the array subscript "[]" from the end of 'name' if there is one
238
// and stores the result in 'out'.
239
static
void
getArrayNameAndIndex(
const
char
*str,
240
UT_String
&name_out,
241
int
*index_out);
242
243
// Appends an array subscript to the name of this uniform and stores the
244
// result in 'out'. Only call this method for array uniforms.
245
void
getIndexedName(
int
index
,
UT_WorkBuffer
&out)
const
;
246
//void getIndexedName(int index, UT_String &out)const;
247
248
const
UT_StringHolder
&
getName
()
const
{
return
myName; }
249
250
// getSize() returns the array size or 1 if this uniform is not an array.
251
// Note that GLSL allows arrays of size 1 so this method cannot be used
252
// to determine whether or not this uniform is an array.
253
int
getSize
()
const
{
return
myArraySize; }
254
RE_UniformType
getType
()
const
{
return
myType; }
255
RE_UniformBuiltIn
getBuiltInType
()
const
{
return
myUniformType; }
256
int
getByteSize
()
const
{
return
myValueBytes; }
257
int
getByteCapacity
()
const
{
return
myValueCapacity; }
258
259
// Get/set the value of this uniform. If this uniform is an array
260
// then 'index' specifies which array element value to return/set;
261
// otherwise, its ignored.
262
const
void
*getValue(
int
index=0)
const
;
263
void
*getValue(
int
index=0);
264
bool
setValue(
const
void
*
value
,
int
index=0);
265
bool
setValues(
const
void
*
value
);
266
267
// Return the color or alpha for (R,G,B,A) color values. Will assert if the
268
// uniform is not a color.
269
UT_Color
getColor(
int
index=0)
const
;
270
fpreal
getAlpha(
int
index=0)
const
;
271
272
UT_Vector2F
getVector2(
int
index=0)
const
;
273
UT_Vector3F
getVector3(
int
index=0)
const
;
274
UT_Vector4F
getVector4(
int
index=0)
const
;
275
276
UT_Matrix3D
getMatrix3(
int
index=0)
const
;
277
UT_Matrix4D
getMatrix4(
int
index=0)
const
;
278
279
// Copy the values of 'copy' into this uniform. The type and size must
280
// match. Returns true if the value changed.
281
bool
copy
(
const
RE_Uniform
*
copy
);
282
283
// Copy the values in data into this uniform. The array must be at least
284
// as large as the value returned by getByteSize(). Returns true if the
285
// value changed.
286
bool
copyBytes(
const
void
*
data
);
287
288
// The version is incremented whenever the value of this uniform is
289
// changed. The version starts at 0.
290
int
getVersion
()
const
{
return
myVersion; }
291
292
void
setAutoGenerated
(
bool
gen
=
true
)
293
{ myAutoGeneratedFlag =
gen
; }
294
bool
isAutoGenerated
()
const
{
return
myAutoGeneratedFlag;}
295
296
// Returns an element of RE_UniformBuiltIn if the specified uniform's
297
// type, size, and name match the RE_UniformBuiltIn's type, size, and
298
// name and the uniform is supported for the specified language; otherwise,
299
// returns -1.
300
static
int
getBuiltIn(
const
RE_Uniform
*uniform,
301
int
languages =
302
RE_SHADER_LANGUAGE_ALL
);
303
static
int
getBuiltIn(
const
UT_StringHolder
&name,
304
RE_UniformType
type,
305
int
languages =
306
RE_SHADER_LANGUAGE_ALL
);
307
308
// Static member functions for retrieving information about built-in
309
// uniforms.
310
static
const
char
*getBuiltInName(
RE_UniformBuiltIn
built_in);
311
static
RE_UniformType
getBuiltInType(
RE_UniformBuiltIn
built_in);
312
313
static
void
initBuiltIns();
314
315
// Specify that a given uniform object should represent a given built-in
316
// uniform. After a built-in has been registered, calling getBuiltIn(int)
317
// returns the registered uniform object. By specifying a uniform object
318
// when calling unregisterBuilInt(), the built-in will only be unregistered
319
// if the currently registered uniform object matches the specified object.
320
static
void
registerBuiltIn(
RE_Render
*
r
,
321
RE_UniformBuiltIn
built_in,
322
const
RE_Uniform
&uniform);
323
324
// A convenience version for single-index variables. 'data' must match the
325
// uniform's data type.
326
static
void
registerBuiltIn(
RE_Render
*
r
,
327
RE_UniformBuiltIn
built_in,
328
const
void
*
data
=
nullptr
);
329
330
// Assign a new value to a previous registered uniform.
331
static
bool
assignBuiltIn(
RE_Render
*
r
,
332
RE_UniformBuiltIn
built_in,
333
const
void
*
data
);
334
335
// Assign a range of values to a previously registered uniform array.
336
// Element zero passed in 'data' always corresponds to element 'start' in
337
// the uniform.
338
static
bool
assignBuiltInArray(
RE_Render
*
r
,
339
RE_UniformBuiltIn
built_in,
340
const
void
*
data
,
341
int
start
,
342
int
num
);
343
344
// Remove the uniform. If registerBuiltIn was called, the unform is unbound
345
// only. If assignBuiltIn was called, the uniform is unbound and deleted.
346
static
void
unregisterBuiltIn(
RE_Render
*
r
,
347
RE_UniformBuiltIn
built_in);
348
349
void
print
()
const
;
350
351
// For RE_Shader - caching of uniform index in the uniform.
352
void
storeShaderUniformIndex(
const
RE_Shader
*sh,
353
int
index)
const
;
354
int
getShaderUniformIndex(
const
RE_Shader
*sh)
const
;
355
356
void
copyTo(
RE_UniformStackEntry
&entry)
const
;
357
void
copyFrom(
const
RE_UniformStackEntry
&entry);
358
359
360
static
int
getVectorSize(
RE_UniformType
type);
361
static
bool
isFloat(
RE_UniformType
type);
362
static
bool
isInt(
RE_UniformType
type);
363
static
bool
isSampler(
RE_UniformType
type);
364
static
bool
isImage
(
RE_UniformType
type);
365
366
private
:
367
static
const
int
theTypeSizes[
RE_UNIFORM_TYPE__count
];
368
UT_StringHolder
myName;
369
RE_UniformType
myType;
370
int
myArraySize;
371
int
myValueBytes;
372
int
myValueCapacity;
373
int
myVersion;
374
char
*myValues;
375
bool
myAutoGeneratedFlag;
376
RE_UniformBuiltIn
myUniformType;
377
378
// uniform index caching
379
mutable
int
myStoredIndex;
380
mutable
int
myStoredShaderSerial;
381
mutable
const
void
*myStoredShader;
// void *, ptr compare only
382
};
383
384
class
RE_UniformStackEntry
385
{
386
public
:
387
RE_UniformStackEntry
()
388
:
myByteSize
(0),
myArraySize
(0),
myVersion
(0),
myData
(nullptr) {}
389
~RE_UniformStackEntry
()
390
{
391
if
(
myData
)
392
free(
myData
);
393
}
394
395
void
*
myData
;
396
int
myVersion
;
397
int
myArraySize
;
398
int
myByteSize
;
399
};
400
401
#endif
RE_UNIFORM_HAS_SCENE_ENV_MAP
Definition:
RE_Uniform.h:137
RE_UniformStackEntry::RE_UniformStackEntry
RE_UniformStackEntry()
Definition:
RE_Uniform.h:387
RE_UNIFORM_UNSIGNED_INT_SAMPLER_BUFFER
Definition:
RE_Uniform.h:187
RE_UNIFORM_PICK_BUFFER
Definition:
RE_Uniform.h:107
RE_UNIFORM_SELECT_INSTANCE
Definition:
RE_Uniform.h:49
RE_Uniform::getType
RE_UniformType getType() const
Definition:
RE_Uniform.h:254
UT_Matrix3T< fpreal64 >
RE_UNIFORM_BOOL_VEC3
Definition:
RE_Uniform.h:167
RE_Uniform::getBuiltInType
RE_UniformBuiltIn getBuiltInType() const
Definition:
RE_Uniform.h:255
RE_UNIFORM_USE_INSTANCE_PRIM_ID
Definition:
RE_Uniform.h:99
RE_UNIFORM_FLOAT_MAT3
Definition:
RE_Uniform.h:170
RE_UNIFORM_SAMPLER_2D_MULTISAMPLE
Definition:
RE_Uniform.h:183
UT_Matrix4T< fpreal64 >
RE_UNIFORM_IMAGE_UINT_1D
Definition:
RE_Uniform.h:210
RE_UNIFORM_VIEW_MATRIX
Definition:
RE_Uniform.h:59
RE_UNIFORM_BOOL_VEC2
Definition:
RE_Uniform.h:166
RE_UNIFORM_IMAGE_INT_RECTANGLE
Definition:
RE_Uniform.h:202
RE_UNIFORM_SELECT_COLOR
Definition:
RE_Uniform.h:46
RE_UNIFORM_OBJVIEW_MATRIX
Definition:
RE_Uniform.h:68
RE_UNIFORM_BLEND_SHAPE_VERTEX_COUNT
Definition:
RE_Uniform.h:128
RE_Uniform
Definition:
RE_Uniform.h:227
RE_API.h
RE_UNIFORM_IMAGE_UINT_CUBE
Definition:
RE_Uniform.h:214
UT_WorkBuffer
Definition:
UT_WorkBuffer.h:68
RE_UNIFORM_DECORATION_FONT_PARMS
Definition:
RE_Uniform.h:88
RE_UNIFORM_FLOAT_VEC4
Definition:
RE_Uniform.h:151
RE_UNIFORM_IMAGE_UINT_BUFFER
Definition:
RE_Uniform.h:215
RE_API
#define RE_API
Definition:
RE_API.h:10
RE_UNIFORM_INT_SAMPLER_BUFFER
Definition:
RE_Uniform.h:186
RE_UNIFORM_IMAGE_RECTANGLE
Definition:
RE_Uniform.h:192
RE_UNIFORM_IMAGE_2D_MULTISAMPLE_ARRAY
Definition:
RE_Uniform.h:198
RE_UNIFORM_DIFFUSE
Definition:
RE_Uniform.h:32
RE_UNIFORM_SAMPLER_1D_ARRAY
Definition:
RE_Uniform.h:180
Filesystem::copy
OIIO_UTIL_API bool copy(string_view from, string_view to, std::string &err)
RE_UNIFORM_IMAGE_INT_3D
Definition:
RE_Uniform.h:201
start
GLuint start
Definition:
glcorearb.h:475
RE_UNIFORM_COVERAGE_MASK
Definition:
RE_Uniform.h:52
RE_UNIFORM_LIGHT_MASK
Definition:
RE_Uniform.h:55
RE_UNIFORM_INT_VEC2
Definition:
RE_Uniform.h:157
RE_UNIFORM_LOCATED_MAP
Definition:
RE_Uniform.h:124
RE_UNIFORM_EMISSION
Definition:
RE_Uniform.h:30
RE_UNIFORM_FILL_SELECTION
Definition:
RE_Uniform.h:51
RE_UNIFORM_USE_DEPTH_MAP
Definition:
RE_Uniform.h:73
RE_UNIFORM_SAMPLER_BUFFER
Definition:
RE_Uniform.h:185
RE_UNIFORM_COLOR_RAMP
Definition:
RE_Uniform.h:111
RE_UNIFORM_DECORATION_SCALE
Definition:
RE_Uniform.h:87
RE_UNIFORM_IMAGE_INT_2D_ARRAY
Definition:
RE_Uniform.h:206
RE_UNIFORM_IMAGE_2D_MULTISAMPLE
Definition:
RE_Uniform.h:197
RE_UNIFORM_IMAGE_INT_2D_MULTISAMPLE_ARRAY
Definition:
RE_Uniform.h:209
RE_UNIFORM_DOUBLE_MAT4
Definition:
RE_Uniform.h:174
RE_UNIFORM_CONST_COLOR
Definition:
RE_Uniform.h:83
RE_UNIFORM_DEPTH_OCCLUSION
Definition:
RE_Uniform.h:133
RE_Uniform::isAutoGenerated
bool isAutoGenerated() const
Definition:
RE_Uniform.h:294
RE_UNIFORM_MAX_LOCATED_ID
Definition:
RE_Uniform.h:121
RE_Uniform::setAutoGenerated
void setAutoGenerated(bool gen=true)
Definition:
RE_Uniform.h:292
RE_UNIFORM_PICK_HAS_MAP
Definition:
RE_Uniform.h:104
RE_UNIFORM_SAMPLER_CUBE
Definition:
RE_Uniform.h:178
RE_UNIFORM_DEPTH_RANGE
Definition:
RE_Uniform.h:76
RE_UNIFORM_COLOR_XFORM
Definition:
RE_Uniform.h:130
name
GLuint const GLchar * name
Definition:
glcorearb.h:786
RE_UniformType
RE_UniformType
Definition:
RE_Uniform.h:145
RE_UNIFORM_DECORATION_LOCATE
Definition:
RE_Uniform.h:90
RE_UNIFORM_UV_FILL_ALPHA
Definition:
RE_Uniform.h:119
RE_UNIFORM_PICK_BUFFER_INFO
Definition:
RE_Uniform.h:106
RE_UNIFORM_PRIM_BASE
Definition:
RE_Uniform.h:94
UT_Vector3T< fpreal32 >
RE_UNIFORM_CONST_COLOR_MAP
Definition:
RE_Uniform.h:84
UT_Vector4T< fpreal32 >
UT_Vector2T< fpreal32 >
RE_UNIFORM_MATERIAL_GROUP
Definition:
RE_Uniform.h:39
RE_UNIFORM_MATERIAL_MASK
Definition:
RE_Uniform.h:40
RE_UNIFORM_USE_LOCATED_MAP
Definition:
RE_Uniform.h:123
RE_UNIFORM_UV_FILL_BACKFACES
Definition:
RE_Uniform.h:116
RE_UNIFORM_IMAGE_UINT_RECTANGLE
Definition:
RE_Uniform.h:213
RE_UNIFORM_COLOR_RAMP_ENABLE
Definition:
RE_Uniform.h:112
RE_UNIFORM_AMBIENT
Definition:
RE_Uniform.h:33
RE_UNIFORM_BUILT_IN__count
Definition:
RE_Uniform.h:139
RE_UNIFORM_IMAGE_UINT_2D
Definition:
RE_Uniform.h:211
RE_UNIFORM_SCENE_IOR
Definition:
RE_Uniform.h:57
RE_UNIFORM_FLOAT
Definition:
RE_Uniform.h:148
RE_SHADER_LANGUAGE_ALL
Definition:
RE_Types.h:246
RE_UNIFORM_INSTANCE_BASE
Definition:
RE_Uniform.h:97
RE_UNIFORM_COLOR_XFORM_REF_VEC
Definition:
RE_Uniform.h:131
RE_UNIFORM_IMAGE_UINT_CUBE_MAP_ARRAY
Definition:
RE_Uniform.h:218
RE_UNIFORM_IMAGE_BUFFER
Definition:
RE_Uniform.h:193
RE_UNIFORM_INV_PROJECT_MATRIX
Definition:
RE_Uniform.h:65
size
GLsizeiptr size
Definition:
glcorearb.h:664
RE_UNIFORM_COLOR_IGNORE_GEO
Definition:
RE_Uniform.h:114
RE_UNIFORM_BOOL_VEC4
Definition:
RE_Uniform.h:168
RE_UNIFORM_LIGHTING_ENABLED
Definition:
RE_Uniform.h:54
UT_String.h
Alembic::Util::ALEMBIC_VERSION_NS::operator==
bool operator==(const BaseDimensions< T > &a, const BaseDimensions< Y > &b)
Definition:
Dimensions.h:137
RE_UNIFORM_IMAGE_CUBE
Definition:
RE_Uniform.h:191
UT_StringHolder
Definition:
UT_StringHolder.h:1004
RE_UNIFORM_OBJECT_MATRIX
Definition:
RE_Uniform.h:61
RE_UNIFORM_BOOL
Definition:
RE_Uniform.h:165
RE_UNIFORM_DEPTH_OFFSET
Definition:
RE_Uniform.h:77
RE_UNIFORM_IMAGE_3D
Definition:
RE_Uniform.h:190
RE_UNIFORM_UNSIGNED_INT
Definition:
RE_Uniform.h:160
RE_UniformNames.h
RE_UNIFORM_SELECTION_TYPE
Definition:
RE_Uniform.h:50
RE_UNIFORM_SELECT_MODE
Definition:
RE_Uniform.h:48
RE_UNIFORM_DOUBLE
Definition:
RE_Uniform.h:152
RE_UNIFORM_PRIM_DIVISOR
Definition:
RE_Uniform.h:93
UT_Color
Definition:
UT_Color.h:85
RE_UNIFORM_SPLIT_GROUP
Definition:
RE_Uniform.h:42
RE_UNIFORM_IMAGE_1D
Definition:
RE_Uniform.h:188
RE_UNIFORM_IMAGE_2D
Definition:
RE_Uniform.h:189
RE_UNIFORM_IMAGE_UINT_2D_MULTISAMPLE
Definition:
RE_Uniform.h:219
num
GLuint num
Definition:
glew.h:2695
RE_Render
Definition:
RE_Render.h:37
RE_UNIFORM_FLOAT_MAT4
Definition:
RE_Uniform.h:171
RE_Uniform::getByteCapacity
int getByteCapacity() const
Definition:
RE_Uniform.h:257
GA_Names::gen
GA_API const UT_StringHolder gen
RE_UNIFORM_WIRE_OVER
Definition:
RE_Uniform.h:80
RE_UNIFORM_VISIBLE_FLAG
Definition:
RE_Uniform.h:135
RE_UNIFORM_CAM_VIEW_MATRIX
Definition:
RE_Uniform.h:66
RE_UNIFORM_NUM_BLEND_SHAPES
Definition:
RE_Uniform.h:127
RE_UNIFORM_DOUBLE_VEC2
Definition:
RE_Uniform.h:153
RE_UNIFORM_IMAGE_INT_CUBE_MAP_ARRAY
Definition:
RE_Uniform.h:207
RE_UNIFORM_UNSIGNED_INT_VEC3
Definition:
RE_Uniform.h:162
RE_UNIFORM_DECORATION_INSTANCE
Definition:
RE_Uniform.h:91
RE_UNIFORM_FLOAT_VEC2
Definition:
RE_Uniform.h:149
RE_UNIFORM_IMAGE_INT_2D
Definition:
RE_Uniform.h:200
RE_UNIFORM_MATERIAL_PASS
Definition:
RE_Uniform.h:35
RE_UNIFORM_IMAGE_INT_BUFFER
Definition:
RE_Uniform.h:204
RE_UNIFORM_UNSIGNED_INT_VEC2
Definition:
RE_Uniform.h:161
RE_UniformBuiltIn
RE_UniformBuiltIn
Definition:
RE_Uniform.h:28
RE_UNIFORM_PRIM_CONSTANT_ID
Definition:
RE_Uniform.h:98
RE_Types.h
RE_UNIFORM_ALPHA_PASS
Definition:
RE_Uniform.h:36
RE_UNIFORM_USE_CONST_COLOR_MAP
Definition:
RE_Uniform.h:85
RE_UNIFORM_IMAGE_INT_1D
Definition:
RE_Uniform.h:199
RE_UNIFORM_UV_BACKFACES_SEL_COLOR
Definition:
RE_Uniform.h:118
RE_UNIFORM_DEPTH_MAP
Definition:
RE_Uniform.h:74
RE_UniformStackEntry::myArraySize
int myArraySize
Definition:
RE_Uniform.h:397
RE_UNIFORM_SAMPLER_1D
Definition:
RE_Uniform.h:175
RE_UNIFORM_MATERIAL_LAYER
Definition:
RE_Uniform.h:38
RE_Shader
Definition:
RE_Shader.h:60
RE_UNIFORM_TYPE__count
Definition:
RE_Uniform.h:222
RE_UNIFORM_SAMPLER_3D
Definition:
RE_Uniform.h:177
RE_Uniform::getSize
int getSize() const
Definition:
RE_Uniform.h:253
RE_UNIFORM_GHOST_COLOR
Definition:
RE_Uniform.h:45
RE_UNIFORM_SPECULAR
Definition:
RE_Uniform.h:31
UT_LinkList.h
RE_UNIFORM_PICK_BASE_ID
Definition:
RE_Uniform.h:101
RE_UNIFORM_INT_VEC4
Definition:
RE_Uniform.h:159
RE_UNIFORM_IMAGE_UINT_3D
Definition:
RE_Uniform.h:212
RE_UNIFORM_UNSIGNED_INT_VEC4
Definition:
RE_Uniform.h:163
RE_UNIFORM_NUM_BONE_TRANSFORMS
Definition:
RE_Uniform.h:126
RE_UNIFORM_CAM_PROJECT_MATRIX
Definition:
RE_Uniform.h:67
RE_UNIFORM_FLOAT_VEC3
Definition:
RE_Uniform.h:150
RE_UNIFORM_PROJECT_MATRIX
Definition:
RE_Uniform.h:64
RE_UNIFORM_SAMPLES
Definition:
RE_Uniform.h:70
RE_UNIFORM_ZBUFFER_FAR
Definition:
RE_Uniform.h:78
RE_UNIFORM_IMAGE_2D_ARRAY
Definition:
RE_Uniform.h:195
RE_UNIFORM_INT
Definition:
RE_Uniform.h:156
RE_UniformStackEntry::myVersion
int myVersion
Definition:
RE_Uniform.h:396
RE_UNIFORM_IMAGE_1D_ARRAY
Definition:
RE_Uniform.h:194
RE_UNIFORM_INV_OBJECT_MATRIX
Definition:
RE_Uniform.h:62
RE_UNIFORM_DECORATION_VISIBILITY
Definition:
RE_Uniform.h:89
RE_UNIFORM_ONION_SKIN_GROUP
Definition:
RE_Uniform.h:43
RE_UNIFORM_RENDER_PASS
Definition:
RE_Uniform.h:37
fpreal
fpreal64 fpreal
Definition:
SYS_Types.h:277
RE_Uniform::getByteSize
int getByteSize() const
Definition:
RE_Uniform.h:256
RE_UNIFORM_SELECT_SECOND_COLOR
Definition:
RE_Uniform.h:47
RE_UNIFORM_IMAGE_UINT_2D_MULTISAMPLE_ARRAY
Definition:
RE_Uniform.h:220
RE_UNIFORM_IMAGE_INT_2D_MULTISAMPLE
Definition:
RE_Uniform.h:208
RE_UNIFORM_SAMPLER_CUBE_ARRAY
Definition:
RE_Uniform.h:182
RE_Uniform::getName
const UT_StringHolder & getName() const
Definition:
RE_Uniform.h:248
index
GLuint index
Definition:
glcorearb.h:786
RE_UNIFORM_COLOR_RANGE
Definition:
RE_Uniform.h:113
RE_UNIFORM_SAMPLER_2D_ARRAY
Definition:
RE_Uniform.h:181
RE_UNIFORM_WIRE_THICKNESS
Definition:
RE_Uniform.h:82
RE_UNIFORM_DOUBLE_VEC4
Definition:
RE_Uniform.h:155
RE_UNIFORM_INVALID
Definition:
RE_Uniform.h:147
RE_UNIFORM_PICK_MAP
Definition:
RE_Uniform.h:105
RE_UNIFORM_DOUBLE_MAT3
Definition:
RE_Uniform.h:173
RE_UNIFORM_DEPTH_PROJECT
Definition:
RE_Uniform.h:75
RE_UNIFORM_FLOAT_MAT2
Definition:
RE_Uniform.h:169
isImage
IMF_EXPORT bool isImage(const std::string &name)
RE_UNIFORM_IMAGE_UINT_2D_ARRAY
Definition:
RE_Uniform.h:217
RE_UNIFORM_IMAGE_UINT_1D_ARRAY
Definition:
RE_Uniform.h:216
UT_String
Definition:
UT_String.h:72
RE_UNIFORM_UV_BACKFACES_COLOR
Definition:
RE_Uniform.h:117
RE_UNIFORM_INT_VEC3
Definition:
RE_Uniform.h:158
RE_UNIFORM_DOUBLE_VEC3
Definition:
RE_Uniform.h:154
value
Definition:
core.h:1131
RE_UNIFORM_VERTEX_OFFSET
Definition:
RE_Uniform.h:95
RE_UNIFORM_REFLECT_ORIGIN
Definition:
RE_Uniform.h:56
RE_UNIFORM_PICK_AREA
Definition:
RE_Uniform.h:103
RE_UNIFORM_IMAGE_CUBE_MAP_ARRAY
Definition:
RE_Uniform.h:196
RE_UNIFORM_INV_VIEW_MATRIX
Definition:
RE_Uniform.h:60
RE_UniformStackEntry::~RE_UniformStackEntry
~RE_UniformStackEntry()
Definition:
RE_Uniform.h:389
RE_UniformStackEntry::myByteSize
int myByteSize
Definition:
RE_Uniform.h:398
RE_UNIFORM_SNAP_PARMS
Definition:
RE_Uniform.h:109
RE_UNIFORM_IS_ORTHO
Definition:
RE_Uniform.h:71
UT_LinkNode
Definition:
UT_LinkList.h:21
UT_Color.h
type
type
Definition:
core.h:1059
RE_UNIFORM_DOUBLE_MAT2
Definition:
RE_Uniform.h:172
r
GLboolean r
Definition:
glcorearb.h:1222
RE_UNIFORM_ALPHA_CUTOFF
Definition:
RE_Uniform.h:41
print
FMT_INLINE void print(format_string< T...> fmt, T &&...args)
Definition:
core.h:2976
RE_UNIFORM_SNAP_DISTANCES
Definition:
RE_Uniform.h:108
RE_UNIFORM_NORMAL_MATRIX
Definition:
RE_Uniform.h:63
RE_UNIFORM_IMAGE_INT_1D_ARRAY
Definition:
RE_Uniform.h:205
RE_UNIFORM_SCREEN_SIZE
Definition:
RE_Uniform.h:69
RE_UNIFORM_SAMPLER_RECTANGLE
Definition:
RE_Uniform.h:179
RE_UniformStackEntry
Definition:
RE_Uniform.h:384
RE_UNIFORM_SELECTION_BASE
Definition:
RE_Uniform.h:96
data
Definition:
format.h:895
RE_UNIFORM_SAMPLER_2D
Definition:
RE_Uniform.h:176
RE_UNIFORM_SAMPLER_2D_SHADOW
Definition:
RE_Uniform.h:184
RE_UNIFORM_PICK_COMPONENT_ID
Definition:
RE_Uniform.h:102
RE_UNIFORM_WIRE_COLOR
Definition:
RE_Uniform.h:81
RE_UNIFORM_MIN_LOCATED_ID
Definition:
RE_Uniform.h:122
RE_UniformStackEntry::myData
void * myData
Definition:
RE_Uniform.h:395
RE_UNIFORM_UNSIGNED_INT64
Definition:
RE_Uniform.h:164
RE_Uniform::getVersion
int getVersion() const
Definition:
RE_Uniform.h:290
RE_UNIFORM_IMAGE_INT_CUBE
Definition:
RE_Uniform.h:203
RE
RE_Uniform.h
Generated on Wed Oct 4 2023 02:49:30 for HDK by
1.8.6