2 * Copyright © 2013 Intel Corporation
4 * Permission is hereby granted, free of charge, to any person obtaining a
5 * copy of this software and associated documentation files (the "Software"),
6 * to deal in the Software without restriction, including without limitation
7 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8 * and/or sell copies of the Software, and to permit persons to whom the
9 * Software is furnished to do so, subject to the following conditions:
11 * The above copyright notice and this permission notice (including the next
12 * paragraph) shall be included in all copies or substantial portions of the
15 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
18 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
20 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
21 * DEALINGS IN THE SOFTWARE.
25 * \file builtin_type_macros.h
27 * This contains definitions for all GLSL built-in types, regardless of what
28 * language version or extension might provide them.
31 DECL_TYPE(error
, GL_INVALID_ENUM
, GLSL_TYPE_ERROR
, 0, 0)
32 DECL_TYPE(void, GL_INVALID_ENUM
, GLSL_TYPE_VOID
, 0, 0)
34 #define DECL_VEC_TYPE(stype, vtype, btype, etype, ...) \
35 DECL_TYPE(stype, etype ##__VA_ARGS__, btype, 1, 1) \
36 DECL_TYPE(vtype ## 2, etype ##_VEC2 ##__VA_ARGS__, btype, 2, 1) \
37 DECL_TYPE(vtype ## 3, etype ##_VEC3 ##__VA_ARGS__, btype, 3, 1) \
38 DECL_TYPE(vtype ## 4, etype ##_VEC4 ##__VA_ARGS__, btype, 4, 1) \
39 DECL_TYPE(vtype ## 8, 0, btype, 8, 1) \
40 DECL_TYPE(vtype ## 16, 0, btype, 16, 1)
42 DECL_VEC_TYPE(bool, bvec
, GLSL_TYPE_BOOL
, GL_BOOL
)
43 DECL_VEC_TYPE(int, ivec
, GLSL_TYPE_INT
, GL_INT
)
44 DECL_VEC_TYPE(uint
, uvec
, GLSL_TYPE_UINT
, GL_UNSIGNED_INT
)
45 DECL_VEC_TYPE(float, vec
, GLSL_TYPE_FLOAT
, GL_FLOAT
)
46 DECL_VEC_TYPE(float16_t
, f16vec
, GLSL_TYPE_FLOAT16
, GL_FLOAT16
, _NV
)
47 DECL_VEC_TYPE(double, dvec
, GLSL_TYPE_DOUBLE
, GL_DOUBLE
)
48 DECL_VEC_TYPE(int64_t, i64vec
, GLSL_TYPE_INT64
, GL_INT64
, _ARB
)
49 DECL_VEC_TYPE(uint64_t, u64vec
, GLSL_TYPE_UINT64
, GL_UNSIGNED_INT64
, _ARB
)
50 DECL_VEC_TYPE(int16_t, i16vec
, GLSL_TYPE_INT16
, GL_INT16
, _NV
)
51 DECL_VEC_TYPE(uint16_t, u16vec
, GLSL_TYPE_UINT16
, GL_UNSIGNED_INT16
, _NV
)
52 DECL_VEC_TYPE(int8_t, i8vec
, GLSL_TYPE_INT8
, GL_INT8
, _NV
)
53 DECL_VEC_TYPE(uint8_t, u8vec
, GLSL_TYPE_UINT8
, GL_UNSIGNED_INT8
, _NV
)
55 DECL_TYPE(mat2
, GL_FLOAT_MAT2
, GLSL_TYPE_FLOAT
, 2, 2)
56 DECL_TYPE(mat3
, GL_FLOAT_MAT3
, GLSL_TYPE_FLOAT
, 3, 3)
57 DECL_TYPE(mat4
, GL_FLOAT_MAT4
, GLSL_TYPE_FLOAT
, 4, 4)
59 DECL_TYPE(mat2x3
, GL_FLOAT_MAT2x3
, GLSL_TYPE_FLOAT
, 3, 2)
60 DECL_TYPE(mat2x4
, GL_FLOAT_MAT2x4
, GLSL_TYPE_FLOAT
, 4, 2)
61 DECL_TYPE(mat3x2
, GL_FLOAT_MAT3x2
, GLSL_TYPE_FLOAT
, 2, 3)
62 DECL_TYPE(mat3x4
, GL_FLOAT_MAT3x4
, GLSL_TYPE_FLOAT
, 4, 3)
63 DECL_TYPE(mat4x2
, GL_FLOAT_MAT4x2
, GLSL_TYPE_FLOAT
, 2, 4)
64 DECL_TYPE(mat4x3
, GL_FLOAT_MAT4x3
, GLSL_TYPE_FLOAT
, 3, 4)
66 DECL_TYPE(f16mat2
, GL_FLOAT16_MAT2_AMD
, GLSL_TYPE_FLOAT16
, 2, 2)
67 DECL_TYPE(f16mat3
, GL_FLOAT16_MAT3_AMD
, GLSL_TYPE_FLOAT16
, 3, 3)
68 DECL_TYPE(f16mat4
, GL_FLOAT16_MAT4_AMD
, GLSL_TYPE_FLOAT16
, 4, 4)
70 DECL_TYPE(f16mat2x3
, GL_FLOAT16_MAT2x3_AMD
, GLSL_TYPE_FLOAT16
, 3, 2)
71 DECL_TYPE(f16mat2x4
, GL_FLOAT16_MAT2x4_AMD
, GLSL_TYPE_FLOAT16
, 4, 2)
72 DECL_TYPE(f16mat3x2
, GL_FLOAT16_MAT3x2_AMD
, GLSL_TYPE_FLOAT16
, 2, 3)
73 DECL_TYPE(f16mat3x4
, GL_FLOAT16_MAT3x4_AMD
, GLSL_TYPE_FLOAT16
, 4, 3)
74 DECL_TYPE(f16mat4x2
, GL_FLOAT16_MAT4x2_AMD
, GLSL_TYPE_FLOAT16
, 2, 4)
75 DECL_TYPE(f16mat4x3
, GL_FLOAT16_MAT4x3_AMD
, GLSL_TYPE_FLOAT16
, 3, 4)
77 DECL_TYPE(dmat2
, GL_DOUBLE_MAT2
, GLSL_TYPE_DOUBLE
, 2, 2)
78 DECL_TYPE(dmat3
, GL_DOUBLE_MAT3
, GLSL_TYPE_DOUBLE
, 3, 3)
79 DECL_TYPE(dmat4
, GL_DOUBLE_MAT4
, GLSL_TYPE_DOUBLE
, 4, 4)
81 DECL_TYPE(dmat2x3
, GL_DOUBLE_MAT2x3
, GLSL_TYPE_DOUBLE
, 3, 2)
82 DECL_TYPE(dmat2x4
, GL_DOUBLE_MAT2x4
, GLSL_TYPE_DOUBLE
, 4, 2)
83 DECL_TYPE(dmat3x2
, GL_DOUBLE_MAT3x2
, GLSL_TYPE_DOUBLE
, 2, 3)
84 DECL_TYPE(dmat3x4
, GL_DOUBLE_MAT3x4
, GLSL_TYPE_DOUBLE
, 4, 3)
85 DECL_TYPE(dmat4x2
, GL_DOUBLE_MAT4x2
, GLSL_TYPE_DOUBLE
, 2, 4)
86 DECL_TYPE(dmat4x3
, GL_DOUBLE_MAT4x3
, GLSL_TYPE_DOUBLE
, 3, 4)
88 DECL_TYPE(sampler
, GL_SAMPLER_1D
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_1D
, 0, 0, GLSL_TYPE_VOID
)
89 DECL_TYPE(sampler1D
, GL_SAMPLER_1D
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_1D
, 0, 0, GLSL_TYPE_FLOAT
)
90 DECL_TYPE(sampler2D
, GL_SAMPLER_2D
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_2D
, 0, 0, GLSL_TYPE_FLOAT
)
91 DECL_TYPE(sampler3D
, GL_SAMPLER_3D
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_3D
, 0, 0, GLSL_TYPE_FLOAT
)
92 DECL_TYPE(samplerCube
, GL_SAMPLER_CUBE
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_CUBE
, 0, 0, GLSL_TYPE_FLOAT
)
93 DECL_TYPE(sampler1DArray
, GL_SAMPLER_1D_ARRAY
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_1D
, 0, 1, GLSL_TYPE_FLOAT
)
94 DECL_TYPE(sampler2DArray
, GL_SAMPLER_2D_ARRAY
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_2D
, 0, 1, GLSL_TYPE_FLOAT
)
95 DECL_TYPE(samplerCubeArray
, GL_SAMPLER_CUBE_MAP_ARRAY
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_CUBE
, 0, 1, GLSL_TYPE_FLOAT
)
96 DECL_TYPE(sampler2DRect
, GL_SAMPLER_2D_RECT
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_RECT
, 0, 0, GLSL_TYPE_FLOAT
)
97 DECL_TYPE(samplerBuffer
, GL_SAMPLER_BUFFER
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_BUF
, 0, 0, GLSL_TYPE_FLOAT
)
98 DECL_TYPE(sampler2DMS
, GL_SAMPLER_2D_MULTISAMPLE
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_MS
, 0, 0, GLSL_TYPE_FLOAT
)
99 DECL_TYPE(sampler2DMSArray
, GL_SAMPLER_2D_MULTISAMPLE_ARRAY
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_MS
, 0, 1, GLSL_TYPE_FLOAT
)
101 DECL_TYPE(isampler1D
, GL_INT_SAMPLER_1D
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_1D
, 0, 0, GLSL_TYPE_INT
)
102 DECL_TYPE(isampler2D
, GL_INT_SAMPLER_2D
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_2D
, 0, 0, GLSL_TYPE_INT
)
103 DECL_TYPE(isampler3D
, GL_INT_SAMPLER_3D
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_3D
, 0, 0, GLSL_TYPE_INT
)
104 DECL_TYPE(isamplerCube
, GL_INT_SAMPLER_CUBE
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_CUBE
, 0, 0, GLSL_TYPE_INT
)
105 DECL_TYPE(isampler1DArray
, GL_INT_SAMPLER_1D_ARRAY
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_1D
, 0, 1, GLSL_TYPE_INT
)
106 DECL_TYPE(isampler2DArray
, GL_INT_SAMPLER_2D_ARRAY
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_2D
, 0, 1, GLSL_TYPE_INT
)
107 DECL_TYPE(isamplerCubeArray
, GL_INT_SAMPLER_CUBE_MAP_ARRAY
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_CUBE
, 0, 1, GLSL_TYPE_INT
)
108 DECL_TYPE(isampler2DRect
, GL_INT_SAMPLER_2D_RECT
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_RECT
, 0, 0, GLSL_TYPE_INT
)
109 DECL_TYPE(isamplerBuffer
, GL_INT_SAMPLER_BUFFER
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_BUF
, 0, 0, GLSL_TYPE_INT
)
110 DECL_TYPE(isampler2DMS
, GL_INT_SAMPLER_2D_MULTISAMPLE
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_MS
, 0, 0, GLSL_TYPE_INT
)
111 DECL_TYPE(isampler2DMSArray
, GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_MS
, 0, 1, GLSL_TYPE_INT
)
113 DECL_TYPE(usampler1D
, GL_UNSIGNED_INT_SAMPLER_1D
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_1D
, 0, 0, GLSL_TYPE_UINT
)
114 DECL_TYPE(usampler2D
, GL_UNSIGNED_INT_SAMPLER_2D
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_2D
, 0, 0, GLSL_TYPE_UINT
)
115 DECL_TYPE(usampler3D
, GL_UNSIGNED_INT_SAMPLER_3D
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_3D
, 0, 0, GLSL_TYPE_UINT
)
116 DECL_TYPE(usamplerCube
, GL_UNSIGNED_INT_SAMPLER_CUBE
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_CUBE
, 0, 0, GLSL_TYPE_UINT
)
117 DECL_TYPE(usampler1DArray
, GL_UNSIGNED_INT_SAMPLER_1D_ARRAY
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_1D
, 0, 1, GLSL_TYPE_UINT
)
118 DECL_TYPE(usampler2DArray
, GL_UNSIGNED_INT_SAMPLER_2D_ARRAY
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_2D
, 0, 1, GLSL_TYPE_UINT
)
119 DECL_TYPE(usamplerCubeArray
, GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_CUBE
, 0, 1, GLSL_TYPE_UINT
)
120 DECL_TYPE(usampler2DRect
, GL_UNSIGNED_INT_SAMPLER_2D_RECT
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_RECT
, 0, 0, GLSL_TYPE_UINT
)
121 DECL_TYPE(usamplerBuffer
, GL_UNSIGNED_INT_SAMPLER_BUFFER
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_BUF
, 0, 0, GLSL_TYPE_UINT
)
122 DECL_TYPE(usampler2DMS
, GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_MS
, 0, 0, GLSL_TYPE_UINT
)
123 DECL_TYPE(usampler2DMSArray
, GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_MS
, 0, 1, GLSL_TYPE_UINT
)
125 DECL_TYPE(sampler1DShadow
, GL_SAMPLER_1D_SHADOW
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_1D
, 1, 0, GLSL_TYPE_FLOAT
)
126 DECL_TYPE(sampler2DShadow
, GL_SAMPLER_2D_SHADOW
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_2D
, 1, 0, GLSL_TYPE_FLOAT
)
127 DECL_TYPE(samplerCubeShadow
, GL_SAMPLER_CUBE_SHADOW
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_CUBE
, 1, 0, GLSL_TYPE_FLOAT
)
128 DECL_TYPE(sampler1DArrayShadow
, GL_SAMPLER_1D_ARRAY_SHADOW
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_1D
, 1, 1, GLSL_TYPE_FLOAT
)
129 DECL_TYPE(sampler2DArrayShadow
, GL_SAMPLER_2D_ARRAY_SHADOW
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_2D
, 1, 1, GLSL_TYPE_FLOAT
)
130 DECL_TYPE(samplerCubeArrayShadow
, GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_CUBE
, 1, 1, GLSL_TYPE_FLOAT
)
131 DECL_TYPE(sampler2DRectShadow
, GL_SAMPLER_2D_RECT_SHADOW
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_RECT
, 1, 0, GLSL_TYPE_FLOAT
)
133 DECL_TYPE(samplerExternalOES
, GL_SAMPLER_EXTERNAL_OES
, GLSL_TYPE_SAMPLER
, GLSL_SAMPLER_DIM_EXTERNAL
, 0, 0, GLSL_TYPE_FLOAT
)
135 DECL_TYPE(image1D
, GL_IMAGE_1D
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_1D
, 0, 0, GLSL_TYPE_FLOAT
)
136 DECL_TYPE(image2D
, GL_IMAGE_2D
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_2D
, 0, 0, GLSL_TYPE_FLOAT
)
137 DECL_TYPE(image3D
, GL_IMAGE_3D
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_3D
, 0, 0, GLSL_TYPE_FLOAT
)
138 DECL_TYPE(image2DRect
, GL_IMAGE_2D_RECT
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_RECT
, 0, 0, GLSL_TYPE_FLOAT
)
139 DECL_TYPE(imageCube
, GL_IMAGE_CUBE
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_CUBE
, 0, 0, GLSL_TYPE_FLOAT
)
140 DECL_TYPE(imageBuffer
, GL_IMAGE_BUFFER
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_BUF
, 0, 0, GLSL_TYPE_FLOAT
)
141 DECL_TYPE(image1DArray
, GL_IMAGE_1D_ARRAY
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_1D
, 0, 1, GLSL_TYPE_FLOAT
)
142 DECL_TYPE(image2DArray
, GL_IMAGE_2D_ARRAY
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_2D
, 0, 1, GLSL_TYPE_FLOAT
)
143 DECL_TYPE(imageCubeArray
, GL_IMAGE_CUBE_MAP_ARRAY
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_CUBE
, 0, 1, GLSL_TYPE_FLOAT
)
144 DECL_TYPE(image2DMS
, GL_IMAGE_2D_MULTISAMPLE
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_MS
, 0, 0, GLSL_TYPE_FLOAT
)
145 DECL_TYPE(image2DMSArray
, GL_IMAGE_2D_MULTISAMPLE_ARRAY
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_MS
, 0, 1, GLSL_TYPE_FLOAT
)
146 DECL_TYPE(iimage1D
, GL_INT_IMAGE_1D
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_1D
, 0, 0, GLSL_TYPE_INT
)
147 DECL_TYPE(iimage2D
, GL_INT_IMAGE_2D
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_2D
, 0, 0, GLSL_TYPE_INT
)
148 DECL_TYPE(iimage3D
, GL_INT_IMAGE_3D
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_3D
, 0, 0, GLSL_TYPE_INT
)
149 DECL_TYPE(iimage2DRect
, GL_INT_IMAGE_2D_RECT
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_RECT
, 0, 0, GLSL_TYPE_INT
)
150 DECL_TYPE(iimageCube
, GL_INT_IMAGE_CUBE
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_CUBE
, 0, 0, GLSL_TYPE_INT
)
151 DECL_TYPE(iimageBuffer
, GL_INT_IMAGE_BUFFER
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_BUF
, 0, 0, GLSL_TYPE_INT
)
152 DECL_TYPE(iimage1DArray
, GL_INT_IMAGE_1D_ARRAY
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_1D
, 0, 1, GLSL_TYPE_INT
)
153 DECL_TYPE(iimage2DArray
, GL_INT_IMAGE_2D_ARRAY
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_2D
, 0, 1, GLSL_TYPE_INT
)
154 DECL_TYPE(iimageCubeArray
, GL_INT_IMAGE_CUBE_MAP_ARRAY
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_CUBE
, 0, 1, GLSL_TYPE_INT
)
155 DECL_TYPE(iimage2DMS
, GL_INT_IMAGE_2D_MULTISAMPLE
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_MS
, 0, 0, GLSL_TYPE_INT
)
156 DECL_TYPE(iimage2DMSArray
, GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_MS
, 0, 1, GLSL_TYPE_INT
)
157 DECL_TYPE(uimage1D
, GL_UNSIGNED_INT_IMAGE_1D
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_1D
, 0, 0, GLSL_TYPE_UINT
)
158 DECL_TYPE(uimage2D
, GL_UNSIGNED_INT_IMAGE_2D
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_2D
, 0, 0, GLSL_TYPE_UINT
)
159 DECL_TYPE(uimage3D
, GL_UNSIGNED_INT_IMAGE_3D
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_3D
, 0, 0, GLSL_TYPE_UINT
)
160 DECL_TYPE(uimage2DRect
, GL_UNSIGNED_INT_IMAGE_2D_RECT
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_RECT
, 0, 0, GLSL_TYPE_UINT
)
161 DECL_TYPE(uimageCube
, GL_UNSIGNED_INT_IMAGE_CUBE
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_CUBE
, 0, 0, GLSL_TYPE_UINT
)
162 DECL_TYPE(uimageBuffer
, GL_UNSIGNED_INT_IMAGE_BUFFER
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_BUF
, 0, 0, GLSL_TYPE_UINT
)
163 DECL_TYPE(uimage1DArray
, GL_UNSIGNED_INT_IMAGE_1D_ARRAY
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_1D
, 0, 1, GLSL_TYPE_UINT
)
164 DECL_TYPE(uimage2DArray
, GL_UNSIGNED_INT_IMAGE_2D_ARRAY
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_2D
, 0, 1, GLSL_TYPE_UINT
)
165 DECL_TYPE(uimageCubeArray
, GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_CUBE
, 0, 1, GLSL_TYPE_UINT
)
166 DECL_TYPE(uimage2DMS
, GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_MS
, 0, 0, GLSL_TYPE_UINT
)
167 DECL_TYPE(uimage2DMSArray
, GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY
, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_MS
, 0, 1, GLSL_TYPE_UINT
)
169 DECL_TYPE(subpassInput
, 0, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_SUBPASS
, 0, 0, GLSL_TYPE_FLOAT
)
170 DECL_TYPE(subpassInputMS
, 0, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_SUBPASS_MS
, 0, 0, GLSL_TYPE_FLOAT
)
171 DECL_TYPE(isubpassInput
, 0, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_SUBPASS
, 0, 0, GLSL_TYPE_INT
)
172 DECL_TYPE(isubpassInputMS
, 0, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_SUBPASS_MS
, 0, 0, GLSL_TYPE_INT
)
173 DECL_TYPE(usubpassInput
, 0, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_SUBPASS
, 0, 0, GLSL_TYPE_UINT
)
174 DECL_TYPE(usubpassInputMS
, 0, GLSL_TYPE_IMAGE
, GLSL_SAMPLER_DIM_SUBPASS_MS
, 0, 0, GLSL_TYPE_UINT
)
176 DECL_TYPE(atomic_uint
, GL_UNSIGNED_INT_ATOMIC_COUNTER
, GLSL_TYPE_ATOMIC_UINT
, 1, 1)
178 STRUCT_TYPE(gl_DepthRangeParameters
)
179 STRUCT_TYPE(gl_PointParameters
)
180 STRUCT_TYPE(gl_MaterialParameters
)
181 STRUCT_TYPE(gl_LightSourceParameters
)
182 STRUCT_TYPE(gl_LightModelParameters
)
183 STRUCT_TYPE(gl_LightModelProducts
)
184 STRUCT_TYPE(gl_LightProducts
)
185 STRUCT_TYPE(gl_FogParameters
)