1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
|
440.vert
Warning, version 440 is not yet complete; most version-specific features are present, but some are missing.
ERROR: 0:8: 'component' : type overflows the available 4 components
ERROR: 0:15: 'component' : component is too large
ERROR: 0:23: 'location' : overlapping use of location 4
ERROR: 0:26: 'location' : overlapping use of location 2
ERROR: 0:31: 'location' : overlapping use of location 15
ERROR: 0:32: 'location' : overlapping use of location 10
ERROR: 0:37: 'location' : overlapping use of location 20
ERROR: 0:39: 'component' : type overflows the available 4 components
ERROR: 0:40: 'component' : type overflows the available 4 components
ERROR: 0:42: 'component' : cannot apply to a matrix, structure, or block
ERROR: 0:43: 'component' : cannot apply to a matrix, structure, or block
ERROR: 0:44: 'component' : cannot apply to a matrix, structure, or block
ERROR: 0:46: 'component' : must specify 'location' to use 'component'
ERROR: 0:52: 'location' : overlapping use of location 40
ERROR: 0:54: 'component' : type overflows the available 4 components
ERROR: 0:55: 'component' : type overflows the available 4 components
ERROR: 0:57: 'component' : cannot apply to a matrix, structure, or block
ERROR: 0:58: 'component' : cannot apply to a matrix, structure, or block
ERROR: 0:61: 'location/component/index' : cannot declare a default, use a full declaration
ERROR: 0:81: 'xfb layout qualifier' : can only be used on an output
ERROR: 0:87: 'xfb_offset' : cannot declare a default, use a full declaration
ERROR: 0:97: 'xfb_buffer' : member cannot contradict block (or what block inherited from global)
ERROR: 0:102: 'xfb_buffer' : member cannot contradict block (or what block inherited from global)
ERROR: 0:102: 'xfb_offset' : overlapping offsets at offset 32 in buffer 3
ERROR: 0:103: 'xfb_offset' : overlapping offsets at offset 0 in buffer 2
ERROR: 0:105: 'xfb_offset' : overlapping offsets at offset 24 in buffer 2
ERROR: 0:108: 'xfb_stride' : all stride settings must match for xfb buffer 15
ERROR: 0:112: 'xfb_offset' : overlapping offsets at offset 4 in buffer 1
ERROR: 0:114: 'xfb_stride' : all stride settings must match for xfb buffer 3
ERROR: 0:115: 'xfb_stride' : all stride settings must match for xfb buffer 3
ERROR: 0:119: 'xfb_stride' : all stride settings must match for xfb buffer 3
ERROR: 0:117: 'xfb_stride' : all stride settings must match for xfb buffer 3
ERROR: 0:138: 'xfb_offset' : overlapping offsets at offset 64 in buffer 0
ERROR: 0:143: 'xfb_buffer' : buffer is too large: gl_MaxTransformFeedbackBuffers is 4
ERROR: 0:144: 'xfb_offset' : must be a multiple of size of first component
ERROR: 0:145: 'xfb_offset' : type contains double; xfb_offset must be a multiple of 8
ERROR: 0:147: 'xfb_offset' : must be a multiple of size of first component
ERROR: 0:148: 'xfb_offset' : type contains double; xfb_offset must be a multiple of 8
ERROR: 0:152: 'xfb_buffer' : buffer is too large: gl_MaxTransformFeedbackBuffers is 4
ERROR: 0:155: 'xfb_buffer' : buffer is too large: gl_MaxTransformFeedbackBuffers is 4
ERROR: 0:155: 'xfb_stride' : 1/4 stride is too large: gl_MaxTransformFeedbackInterleavedComponents is 64
ERROR: 0:157: 'xfb_buffer' : buffer is too large: gl_MaxTransformFeedbackBuffers is 4
ERROR: 0:165: 'gl_BaseVertexARB' : required extension not requested: GL_ARB_shader_draw_parameters
ERROR: 0:165: 'gl_BaseInstanceARB' : required extension not requested: GL_ARB_shader_draw_parameters
ERROR: 0:165: 'gl_DrawIDARB' : required extension not requested: GL_ARB_shader_draw_parameters
ERROR: 0:173: 'assign' : l-value required "gl_BaseVertexARB" (can't modify shader input)
ERROR: 0:174: 'assign' : l-value required "gl_BaseInstanceARB" (can't modify shader input)
ERROR: 0:175: 'assign' : l-value required "gl_DrawIDARB" (can't modify shader input)
ERROR: 0:176: 'glBaseInstanceARB' : undeclared identifier
ERROR: 49 compilation errors. No code generated.
Shader version: 440
Requested GL_ARB_shader_draw_parameters
in xfb mode
ERROR: node is still EOpNull!
0:163 Function Definition: drawParamsBad( (global int)
0:163 Function Parameters:
0:165 Sequence
0:165 Branch: Return with expression
0:165 add (temp int)
0:165 add (temp int)
0:165 'gl_BaseVertexARB' (in int BaseVertex)
0:165 'gl_BaseInstanceARB' (in int BaseInstance)
0:165 'gl_DrawIDARB' (in int DrawId)
0:170 Function Definition: drawParams( (global int)
0:170 Function Parameters:
0:172 Sequence
0:172 Branch: Return with expression
0:172 add (temp int)
0:172 add (temp int)
0:172 'gl_BaseVertexARB' (in int BaseVertex)
0:172 'gl_BaseInstanceARB' (in int BaseInstance)
0:172 'gl_DrawIDARB' (in int DrawId)
0:173 move second child to first child (temp int)
0:173 'gl_BaseVertexARB' (in int BaseVertex)
0:173 Constant:
0:173 3 (const int)
0:174 move second child to first child (temp int)
0:174 'gl_BaseInstanceARB' (in int BaseInstance)
0:174 Constant:
0:174 3 (const int)
0:175 move second child to first child (temp int)
0:175 'gl_DrawIDARB' (in int DrawId)
0:175 Constant:
0:175 3 (const int)
0:176 'glBaseInstanceARB' (temp float)
0:? Linker Objects
0:? 'a' (layout(location=2 component=2 ) in 2-component vector of float)
0:? 'b' (layout(location=2 component=1 ) in float)
0:? 'c' (layout(location=3 component=2 ) in 3-component vector of float)
0:? 'd' (layout(location=0 component=3 ) in 4-element array of float)
0:? 'e' (layout(location=4 component=0 ) in 5-element array of 3-component vector of float)
0:? 'f' (layout(location=4 component=3 ) in 5-element array of float)
0:? 'g' (layout(location=9 ) in 6-element array of float)
0:? 'h' (layout(location=4 component=2 ) in 2-component vector of float)
0:? 'i' (layout(location=3 component=2 ) smooth out 2-component vector of float)
0:? 'j' (layout(location=3 component=0 ) smooth out 2-component vector of float)
0:? 'k' (layout(location=4 component=2 ) smooth out 2-component vector of float)
0:? 'm' (layout(location=4 component=2 ) smooth out 2-component vector of float)
0:? 'n' (layout(location=2 component=2 ) smooth out 2-component vector of float)
0:? 'p' (layout(location=2 component=0 ) smooth out 3-component vector of float)
0:? 'q' (layout(location=10 component=3 ) smooth out 6-element array of float)
0:? 'r' (layout(location=10 component=0 ) smooth out 6-element array of 3-component vector of float)
0:? 's' (layout(location=15 component=3 ) smooth out float)
0:? 't' (layout(location=10 component=1 ) smooth out float)
0:? 'u' (layout(location=20 component=2 ) smooth out float)
0:? 'v' (layout(location=20 component=0 ) smooth out float)
0:? 'w' (layout(location=20 component=3 ) smooth out float)
0:? 'x' (layout(location=20 component=1 ) smooth out 2-component vector of float)
0:? 'y' (layout(location=30 component=3 ) smooth out 2-component vector of float)
0:? 'z' (layout(location=31 component=1 ) smooth out 4-component vector of float)
0:? 'ba' (layout(location=32 component=1 ) smooth out 4X4 matrix of float)
0:? 'Ss' (layout(location=33 component=1 ) smooth out structure{global int a})
0:? 'bb' (layout(location=34 component=1 ) out block{out int a})
0:? 'bc' (layout(location=4095 component=1 ) smooth out float)
0:? 'bd' (out block{layout(location=40 component=2 ) out float u, layout(location=40 component=0 ) out float v, layout(location=40 component=3 ) out float w, layout(location=40 component=1 ) out 2-component vector of float x, layout(location=41 component=3 ) out 2-component vector of float y, layout(location=42 component=1 ) out 4-component vector of float z, layout(location=42 component=1 ) out 4X4 matrix of float ba, layout(location=43 component=1 ) out structure{global int a} Ss})
0:? 'be' (layout(location=50 component=3 ) smooth out int)
0:? 'bf' (layout(location=50 component=0 ) smooth out 3-component vector of float)
0:? 'bbinst1' (out block{out 4-component vector of float bbv})
0:? 'bbinst2' (out block{layout(xfb_buffer=0 xfb_offset=64 ) out 4-component vector of float bbv})
0:? 'bbinst3' (out block{layout(xfb_buffer=3 xfb_offset=16 ) out 4-component vector of float bbv})
0:? 'ubbinst3' (layout(column_major shared ) uniform block{layout(column_major shared xfb_offset=16 ) uniform 4-component vector of float bbv})
0:? 'bg' (layout(xfb_buffer=2 xfb_offset=48 xfb_stride=80 ) smooth out 4-component vector of float)
0:? 'bh' (layout(xfb_buffer=3 xfb_offset=32 xfb_stride=64 ) smooth out 4-component vector of float)
0:? 'bbinst4' (layout(xfb_stride=80 ) out block{layout(xfb_buffer=2 xfb_offset=16 ) out 4-component vector of float bbv1, layout(xfb_buffer=2 xfb_offset=32 ) out 4-component vector of float bbv2})
0:? 'bbinst5' (out block{layout(xfb_buffer=3 xfb_offset=0 ) out 4-component vector of float bbv1, layout(xfb_buffer=3 xfb_offset=48 xfb_stride=64 ) out 4-component vector of float bbv2, out 4-component vector of float bbv3})
0:? 'bbinst6' (out block{layout(xfb_buffer=2 xfb_offset=0 ) out 4-component vector of float bbv1, layout(xfb_buffer=3 xfb_offset=32 xfb_stride=64 ) out 4-component vector of float bbv2, layout(xfb_buffer=2 xfb_offset=0 ) out 4-component vector of float bbv3, out 4-component vector of float bbv5, layout(xfb_buffer=2 xfb_offset=24 ) out float bbf6})
0:? 'bj' (layout(xfb_buffer=1 xfb_offset=4 ) smooth out float)
0:? 'bk' (layout(xfb_buffer=1 xfb_offset=0 ) smooth out 2-component vector of int)
0:? 'bl' (layout(xfb_stride=48 ) smooth out float)
0:? 'bbinst7' (layout(xfb_stride=48 ) out block{layout(xfb_stride=64 ) out 4-component vector of float bbv1, layout(xfb_stride=32 ) out 4-component vector of float bbv2})
0:? 'bbinst8' (layout(xfb_stride=92 ) out block{layout(xfb_buffer=0 xfb_offset=0 ) out bool b, layout(xfb_buffer=0 xfb_offset=8 ) out structure{global bool b, global structure{global int i, global double d, global float f} s, global 2-component vector of float v2} t, layout(xfb_buffer=0 xfb_offset=48 ) out int i, layout(xfb_buffer=0 xfb_offset=52 ) out 3X3 matrix of float m3, layout(xfb_buffer=0 xfb_offset=88 ) out float f, layout(xfb_buffer=0 xfb_offset=92 ) out float g})
0:? 'bbinst9' (out block{layout(xfb_buffer=4 xfb_offset=1 ) out bool b, layout(xfb_buffer=4 xfb_offset=12 ) out structure{global bool b, global structure{global int i, global double d, global float f} s, global 2-component vector of float v2} t, layout(xfb_buffer=4 xfb_offset=52 ) out 3X3 matrix of float m3, layout(xfb_buffer=4 xfb_offset=90 ) out int i, layout(xfb_buffer=4 xfb_offset=98 ) out double d, layout(xfb_buffer=4 xfb_offset=108 ) out structure{global int a} s})
0:? 'bm' (layout(xfb_buffer=5 xfb_offset=0 ) smooth out float)
0:? 'bbinst10' (out block{layout(xfb_buffer=7 xfb_offset=0 ) out 4X4 matrix of double m1, layout(xfb_buffer=7 xfb_offset=128 ) out 4X4 matrix of double m2, layout(xfb_buffer=7 xfb_offset=256 ) out float f})
0:? 'gl_VertexID' (gl_VertexId int VertexId)
0:? 'gl_InstanceID' (gl_InstanceId int InstanceId)
Linked vertex stage:
ERROR: Linking vertex stage: Missing entry point: Each stage requires one "void main()" entry point
ERROR: Linking vertex stage: xfb_stride is too small to hold all buffer entries:
ERROR: xfb_buffer 0, xfb_stride 92, minimum stride needed: 96
ERROR: Linking vertex stage: xfb_stride must be multiple of 8 for buffer holding a double:
ERROR: xfb_buffer 0, xfb_stride 92
ERROR: Linking vertex stage: xfb_stride must be multiple of 4:
ERROR: xfb_buffer 5, xfb_stride 6
ERROR: Linking vertex stage: xfb_stride is too large:
ERROR: xfb_buffer 7, components (1/4 stride) needed are 66, gl_MaxTransformFeedbackInterleavedComponents is 64
Shader version: 440
Requested GL_ARB_shader_draw_parameters
in xfb mode
ERROR: node is still EOpNull!
0:163 Function Definition: drawParamsBad( (global int)
0:163 Function Parameters:
0:165 Sequence
0:165 Branch: Return with expression
0:165 add (temp int)
0:165 add (temp int)
0:165 'gl_BaseVertexARB' (in int BaseVertex)
0:165 'gl_BaseInstanceARB' (in int BaseInstance)
0:165 'gl_DrawIDARB' (in int DrawId)
0:170 Function Definition: drawParams( (global int)
0:170 Function Parameters:
0:172 Sequence
0:172 Branch: Return with expression
0:172 add (temp int)
0:172 add (temp int)
0:172 'gl_BaseVertexARB' (in int BaseVertex)
0:172 'gl_BaseInstanceARB' (in int BaseInstance)
0:172 'gl_DrawIDARB' (in int DrawId)
0:173 move second child to first child (temp int)
0:173 'gl_BaseVertexARB' (in int BaseVertex)
0:173 Constant:
0:173 3 (const int)
0:174 move second child to first child (temp int)
0:174 'gl_BaseInstanceARB' (in int BaseInstance)
0:174 Constant:
0:174 3 (const int)
0:175 move second child to first child (temp int)
0:175 'gl_DrawIDARB' (in int DrawId)
0:175 Constant:
0:175 3 (const int)
0:176 'glBaseInstanceARB' (temp float)
0:? Linker Objects
0:? 'a' (layout(location=2 component=2 ) in 2-component vector of float)
0:? 'b' (layout(location=2 component=1 ) in float)
0:? 'c' (layout(location=3 component=2 ) in 3-component vector of float)
0:? 'd' (layout(location=0 component=3 ) in 4-element array of float)
0:? 'e' (layout(location=4 component=0 ) in 5-element array of 3-component vector of float)
0:? 'f' (layout(location=4 component=3 ) in 5-element array of float)
0:? 'g' (layout(location=9 ) in 6-element array of float)
0:? 'h' (layout(location=4 component=2 ) in 2-component vector of float)
0:? 'i' (layout(location=3 component=2 ) smooth out 2-component vector of float)
0:? 'j' (layout(location=3 component=0 ) smooth out 2-component vector of float)
0:? 'k' (layout(location=4 component=2 ) smooth out 2-component vector of float)
0:? 'm' (layout(location=4 component=2 ) smooth out 2-component vector of float)
0:? 'n' (layout(location=2 component=2 ) smooth out 2-component vector of float)
0:? 'p' (layout(location=2 component=0 ) smooth out 3-component vector of float)
0:? 'q' (layout(location=10 component=3 ) smooth out 6-element array of float)
0:? 'r' (layout(location=10 component=0 ) smooth out 6-element array of 3-component vector of float)
0:? 's' (layout(location=15 component=3 ) smooth out float)
0:? 't' (layout(location=10 component=1 ) smooth out float)
0:? 'u' (layout(location=20 component=2 ) smooth out float)
0:? 'v' (layout(location=20 component=0 ) smooth out float)
0:? 'w' (layout(location=20 component=3 ) smooth out float)
0:? 'x' (layout(location=20 component=1 ) smooth out 2-component vector of float)
0:? 'y' (layout(location=30 component=3 ) smooth out 2-component vector of float)
0:? 'z' (layout(location=31 component=1 ) smooth out 4-component vector of float)
0:? 'ba' (layout(location=32 component=1 ) smooth out 4X4 matrix of float)
0:? 'Ss' (layout(location=33 component=1 ) smooth out structure{global int a})
0:? 'bb' (layout(location=34 component=1 ) out block{out int a})
0:? 'bc' (layout(location=4095 component=1 ) smooth out float)
0:? 'bd' (out block{layout(location=40 component=2 ) out float u, layout(location=40 component=0 ) out float v, layout(location=40 component=3 ) out float w, layout(location=40 component=1 ) out 2-component vector of float x, layout(location=41 component=3 ) out 2-component vector of float y, layout(location=42 component=1 ) out 4-component vector of float z, layout(location=42 component=1 ) out 4X4 matrix of float ba, layout(location=43 component=1 ) out structure{global int a} Ss})
0:? 'be' (layout(location=50 component=3 ) smooth out int)
0:? 'bf' (layout(location=50 component=0 ) smooth out 3-component vector of float)
0:? 'bbinst1' (out block{out 4-component vector of float bbv})
0:? 'bbinst2' (out block{layout(xfb_buffer=0 xfb_offset=64 ) out 4-component vector of float bbv})
0:? 'bbinst3' (out block{layout(xfb_buffer=3 xfb_offset=16 ) out 4-component vector of float bbv})
0:? 'ubbinst3' (layout(column_major shared ) uniform block{layout(column_major shared xfb_offset=16 ) uniform 4-component vector of float bbv})
0:? 'bg' (layout(xfb_buffer=2 xfb_offset=48 xfb_stride=80 ) smooth out 4-component vector of float)
0:? 'bh' (layout(xfb_buffer=3 xfb_offset=32 xfb_stride=64 ) smooth out 4-component vector of float)
0:? 'bbinst4' (layout(xfb_stride=80 ) out block{layout(xfb_buffer=2 xfb_offset=16 ) out 4-component vector of float bbv1, layout(xfb_buffer=2 xfb_offset=32 ) out 4-component vector of float bbv2})
0:? 'bbinst5' (out block{layout(xfb_buffer=3 xfb_offset=0 ) out 4-component vector of float bbv1, layout(xfb_buffer=3 xfb_offset=48 xfb_stride=64 ) out 4-component vector of float bbv2, out 4-component vector of float bbv3})
0:? 'bbinst6' (out block{layout(xfb_buffer=2 xfb_offset=0 ) out 4-component vector of float bbv1, layout(xfb_buffer=3 xfb_offset=32 xfb_stride=64 ) out 4-component vector of float bbv2, layout(xfb_buffer=2 xfb_offset=0 ) out 4-component vector of float bbv3, out 4-component vector of float bbv5, layout(xfb_buffer=2 xfb_offset=24 ) out float bbf6})
0:? 'bj' (layout(xfb_buffer=1 xfb_offset=4 ) smooth out float)
0:? 'bk' (layout(xfb_buffer=1 xfb_offset=0 ) smooth out 2-component vector of int)
0:? 'bl' (layout(xfb_stride=48 ) smooth out float)
0:? 'bbinst7' (layout(xfb_stride=48 ) out block{layout(xfb_stride=64 ) out 4-component vector of float bbv1, layout(xfb_stride=32 ) out 4-component vector of float bbv2})
0:? 'bbinst8' (layout(xfb_stride=92 ) out block{layout(xfb_buffer=0 xfb_offset=0 ) out bool b, layout(xfb_buffer=0 xfb_offset=8 ) out structure{global bool b, global structure{global int i, global double d, global float f} s, global 2-component vector of float v2} t, layout(xfb_buffer=0 xfb_offset=48 ) out int i, layout(xfb_buffer=0 xfb_offset=52 ) out 3X3 matrix of float m3, layout(xfb_buffer=0 xfb_offset=88 ) out float f, layout(xfb_buffer=0 xfb_offset=92 ) out float g})
0:? 'bbinst9' (out block{layout(xfb_buffer=4 xfb_offset=1 ) out bool b, layout(xfb_buffer=4 xfb_offset=12 ) out structure{global bool b, global structure{global int i, global double d, global float f} s, global 2-component vector of float v2} t, layout(xfb_buffer=4 xfb_offset=52 ) out 3X3 matrix of float m3, layout(xfb_buffer=4 xfb_offset=90 ) out int i, layout(xfb_buffer=4 xfb_offset=98 ) out double d, layout(xfb_buffer=4 xfb_offset=108 ) out structure{global int a} s})
0:? 'bm' (layout(xfb_buffer=5 xfb_offset=0 ) smooth out float)
0:? 'bbinst10' (out block{layout(xfb_buffer=7 xfb_offset=0 ) out 4X4 matrix of double m1, layout(xfb_buffer=7 xfb_offset=128 ) out 4X4 matrix of double m2, layout(xfb_buffer=7 xfb_offset=256 ) out float f})
0:? 'gl_VertexID' (gl_VertexId int VertexId)
0:? 'gl_InstanceID' (gl_InstanceId int InstanceId)
|