Closed komputerboy closed 4 years ago
When did you last time update your gfx drivers?
Since you're likely using a laptop with NVIDIA Optimus graphics, did you make sure Godot is running on the dedicated GPU instead of the integrated Intel GPU?
Hello. At first, excuses for my primitive use of english language, I have similar problem opening GODOT 3.2 in GLES3 mode , works almost fine forcing GLES2 via command line (but with some flickering in editor's UI and a visual error in shapes of colision shapes and colission polygons in edition time, maybe a bug?) in my lenovo latop g580 with intel celeron cpu and integrated intel hd graphics, windows 7 ultimate 32 bits (but 64 bits cpu). AIDA64 shows opengl 3.3 100% compliancy. No problen with other programs that requires opengl 3.3 I dont know too much about the matter but here are the log and the AIDA64 report, please pay atention to the GL_ARB_explicit_attrib_location lines in both parts.
Godot Engine v3.2.1.stable.official - https://godotengine.org
OpenGL ES 3.0 Renderer: Intel(R) HD Graphics
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Condition "status != 0x8CD5" is true. Continuing.
At: drivers/gles3/rasterizer_scene_gles3.cpp:5095
ERROR: initialize: Directional shadow framebuffer status invalid
At: drivers/gles3/rasterizer_scene_gles3.cpp:5120
1: #version 330
2: #define GLES_OVER_GL
3: #define USE_TEXTURE_RECT
4: precision highp float;
5: precision highp int;
6:
7: uniform mediump sampler2D color_texture; // texunit:0
8: /* clang-format on */
9: uniform highp vec2 color_texpixel_size;
10: uniform mediump sampler2D normal_texture; // texunit:1
11:
12: in highp vec2 uv_interp;
13: in mediump vec4 color_interp;
14:
15: #if defined(SCREEN_TEXTURE_USED)
16:
17: uniform sampler2D screen_texture; // texunit:-3
18:
19: #endif
20:
21: #if defined(SCREEN_UV_USED)
22:
23: uniform vec2 screen_pixel_size;
24: #endif
25:
26: layout(std140) uniform CanvasItemData {
27:
28: highp mat4 projection_matrix;
29: highp float time;
30: };
31:
32: #ifdef USE_LIGHTING
33:
34: layout(std140) uniform LightData {
35:
36: highp mat4 light_matrix;
37: highp mat4 light_local_matrix;
38: highp mat4 shadow_matrix;
39: highp vec4 light_color;
40: highp vec4 light_shadow_color;
41: highp vec2 light_pos;
42: highp float shadowpixel_size;
43: highp float shadow_gradient;
44: highp float light_height;
45: highp float light_outside_alpha;
46: highp float shadow_distance_mult;
47: };
48:
49: uniform lowp sampler2D light_texture; // texunit:-1
50: in vec4 light_uv_interp;
51: in vec2 transformed_light_uv;
52:
53: in vec4 local_rot;
54:
55: #ifdef USE_SHADOWS
56:
57: uniform highp sampler2D shadow_texture; // texunit:-2
58: in highp vec2 pos;
59:
60: #endif
61:
62: const bool at_light_pass = true;
63: #else
64: const bool at_light_pass = false;
65: #endif
66:
67: uniform mediump vec4 final_modulate;
68:
69: layout(location = 0) out mediump vec4 frag_color;
70:
71: #if defined(USE_MATERIAL)
72:
73: /* clang-format off */
74: layout(std140) uniform UniformData {
75:
76:
77: };
78: /* clang-format on */
79:
80: #endif
81:
82: /* clang-format off */
83:
84:
85: /* clang-format on */
86:
87: void light_compute(
88: inout vec4 light,
89: inout vec2 light_vec,
90: inout float light_height,
91: inout vec4 light_color,
92: vec2 light_uv,
93: inout vec4 shadow_color,
94: inout vec2 shadow_vec,
95: vec3 normal,
96: vec2 uv,
97: #if defined(SCREEN_UV_USED)
98: vec2 screen_uv,
99: #endif
100: vec4 color) {
101:
102: #if defined(USE_LIGHT_SHADER_CODE)
103:
104: /* clang-format off */
105:
106:
107: /* clang-format on */
108:
109: #endif
110: }
111:
112: #ifdef USE_TEXTURE_RECT
113:
114: uniform vec4 dst_rect;
115: uniform vec4 src_rect;
116: uniform bool clip_rect_uv;
117:
118: #ifdef USE_NINEPATCH
119:
120: in highp vec2 pixel_size_interp;
121:
122: uniform int np_repeat_v;
123: uniform int np_repeat_h;
124: uniform bool np_draw_center;
125: // left top right bottom in pixel coordinates
126: uniform vec4 np_margins;
127:
128: float map_ninepatch_axis(float pixel, float draw_size, float tex_pixel_size, float margin_begin, float margin_end, float s_ratio, int np_repeat, inout int draw_center) {
129:
130: float tex_size = 1.0 / tex_pixel_size;
131:
132: float screen_margin_begin = margin_begin / s_ratio;
133: float screen_margin_end = margin_end / s_ratio;
134: if (pixel < screen_margin_begin) {
135: return pixel * s_ratio * tex_pixel_size;
136: } else if (pixel >= draw_size - screen_margin_end) {
137: return (tex_size - (draw_size - pixel) * s_ratio) * tex_pixel_size;
138: } else {
139: if (!np_draw_center) {
140: draw_center--;
141: }
142:
143: // np_repeat is passed as uniform using NinePatchRect::AxisStretchMode enum.
144: if (np_repeat == 0) { // Stretch.
145: // Convert to ratio.
146: float ratio = (pixel - screen_margin_begin) / (draw_size - screen_margin_begin - screen_margin_end);
147: // Scale to source texture.
148: return (margin_begin + ratio * (tex_size - margin_begin - margin_end)) * tex_pixel_size;
149: } else if (np_repeat == 1) { // Tile.
150: // Convert to offset.
151: float ofs = mod((pixel - screen_margin_begin), tex_size - margin_begin - margin_end);
152: // Scale to source texture.
153: return (margin_begin + ofs) * tex_pixel_size;
154: } else if (np_repeat == 2) { // Tile Fit.
155: // Calculate scale.
156: float src_area = draw_size - screen_margin_begin - screen_margin_end;
157: float dst_area = tex_size - margin_begin - margin_end;
158: float scale = max(1.0, floor(src_area / max(dst_area, 0.0000001) + 0.5));
159: // Convert to ratio.
160: float ratio = (pixel - screen_margin_begin) / src_area;
161: ratio = mod(ratio * scale, 1.0);
162: // Scale to source texture.
163: return (margin_begin + ratio * dst_area) * tex_pixel_size;
164: } else { // Shouldn't happen, but silences compiler warning.
165: return 0.0;
166: }
167: }
168: }
169:
170: #endif
171: #endif
172:
173: uniform bool use_default_normal;
174:
175: void main() {
176:
177: vec4 color = color_interp;
178: vec2 uv = uv_interp;
179:
180: #ifdef USE_TEXTURE_RECT
181:
182: #ifdef USE_NINEPATCH
183:
184: int draw_center = 2;
185: float s_ratio = max((1.0 / color_texpixel_size.x) / abs(dst_rect.z), (1.0 / color_texpixel_size.y) / abs(dst_rect.w));
186: s_ratio = max(1.0, s_ratio);
187: uv = vec2(
188: map_ninepatch_axis(pixel_size_interp.x, abs(dst_rect.z), color_texpixel_size.x, np_margins.x, np_margins.z, s_ratio, np_repeat_h, draw_center),
189: map_ninepatch_axis(pixel_size_interp.y, abs(dst_rect.w), color_texpixel_size.y, np_margins.y, np_margins.w, s_ratio, np_repeat_v, draw_center));
190:
191: if (draw_center == 0) {
192: color.a = 0.0;
193: }
194:
195: uv = uv * src_rect.zw + src_rect.xy; //apply region if needed
196: #endif
197:
198: if (clip_rect_uv) {
199:
200: uv = clamp(uv, src_rect.xy, src_rect.xy + abs(src_rect.zw));
201: }
202:
203: #endif
204:
205: #if !defined(COLOR_USED)
206: //default behavior, texture by color
207:
208: #ifdef USE_DISTANCE_FIELD
209: const float smoothing = 1.0 / 32.0;
210: float distance = textureLod(color_texture, uv, 0.0).a;
211: color.a = smoothstep(0.5 - smoothing, 0.5 + smoothing, distance) * color.a;
212: #else
213: color *= texture(color_texture, uv);
214:
215: #endif
216:
217: #endif
218:
219: vec3 normal;
220:
221: #if defined(NORMAL_USED)
222:
223: bool normal_used = true;
224: #else
225: bool normal_used = false;
226: #endif
227:
228: if (use_default_normal) {
229: normal.xy = textureLod(normal_texture, uv, 0.0).xy * 2.0 - 1.0;
230: normal.z = sqrt(1.0 - dot(normal.xy, normal.xy));
231: normal_used = true;
232: } else {
233: normal = vec3(0.0, 0.0, 1.0);
234: }
235:
236: #if defined(SCREEN_UV_USED)
237: vec2 screen_uv = gl_FragCoord.xy * screen_pixel_size;
238: #endif
239:
240: {
241: float normal_depth = 1.0;
242:
243: #if defined(NORMALMAP_USED)
244: vec3 normal_map = vec3(0.0, 0.0, 1.0);
245: normal_used = true;
246: #endif
247:
248: /* clang-format off */
249:
250:
251: /* clang-format on */
252:
253: #if defined(NORMALMAP_USED)
254: normal = mix(vec3(0.0, 0.0, 1.0), normal_map * vec3(2.0, -2.0, 1.0) - vec3(1.0, -1.0, 0.0), normal_depth);
255: #endif
256: }
257: #ifdef DEBUG_ENCODED_32
258: highp float enc32 = dot(color, highp vec4(1.0 / (256.0 * 256.0 * 256.0), 1.0 / (256.0 * 256.0), 1.0 / 256.0, 1.0));
259: color = vec4(vec3(enc32), 1.0);
260: #endif
261:
262: color *= final_modulate;
263:
264: #ifdef USE_LIGHTING
265:
266: vec2 light_vec = transformed_light_uv;
267: vec2 shadow_vec = transformed_light_uv;
268:
269: if (normal_used) {
270: normal.xy = mat2(local_rot.xy, local_rot.zw) * normal.xy;
271: }
272:
273: float att = 1.0;
274:
275: vec2 light_uv = light_uv_interp.xy;
276: vec4 light = texture(light_texture, light_uv);
277:
278: if (any(lessThan(light_uv_interp.xy, vec2(0.0, 0.0))) || any(greaterThanEqual(light_uv_interp.xy, vec2(1.0, 1.0)))) {
279: color.a *= light_outside_alpha; //invisible
280:
281: } else {
282: float real_light_height = light_height;
283: vec4 real_light_color = light_color;
284: vec4 real_light_shadow_color = light_shadow_color;
285:
286: #if defined(USE_LIGHT_SHADER_CODE)
287: //light is written by the light shader
288: light_compute(
289: light,
290: light_vec,
291: real_light_height,
292: real_light_color,
293: light_uv,
294: real_light_shadow_color,
295: shadow_vec,
296: normal,
297: uv,
298: #if defined(SCREEN_UV_USED)
299: screen_uv,
300: #endif
301: color);
302: #endif
303:
304: light *= real_light_color;
305:
306: if (normal_used) {
307: vec3 light_normal = normalize(vec3(light_vec, -real_light_height));
308: light *= max(dot(-light_normal, normal), 0.0);
309: }
310:
311: color *= light;
312:
313: #ifdef USE_SHADOWS
314: #ifdef SHADOW_VEC_USED
315: mat3 inverse_light_matrix = mat3(light_matrix);
316: inverse_light_matrix[0] = normalize(inverse_light_matrix[0]);
317: inverse_light_matrix[1] = normalize(inverse_light_matrix[1]);
318: inverse_light_matrix[2] = normalize(inverse_light_matrix[2]);
319: shadow_vec = (mat3(inverse_light_matrix) * vec3(shadow_vec, 0.0)).xy;
320: #else
321: shadow_vec = light_uv_interp.zw;
322: #endif
323: float angle_to_light = -atan(shadow_vec.x, shadow_vec.y);
324: float PI = 3.14159265358979323846264;
325: /*int i = int(mod(floor((angle_to_light+7.0*PI/6.0)/(4.0*PI/6.0))+1.0, 3.0)); // +1 pq os indices estao em ordem 2,0,1 nos arrays
326: float ang*/
327:
328: float su, sz;
329:
330: float abs_angle = abs(angle_to_light);
331: vec2 point;
332: float sh;
333: if (abs_angle < 45.0 * PI / 180.0) {
334: point = shadow_vec;
335: sh = 0.0 + (1.0 / 8.0);
336: } else if (abs_angle > 135.0 * PI / 180.0) {
337: point = -shadow_vec;
338: sh = 0.5 + (1.0 / 8.0);
339: } else if (angle_to_light > 0.0) {
340:
341: point = vec2(shadow_vec.y, -shadow_vec.x);
342: sh = 0.25 + (1.0 / 8.0);
343: } else {
344:
345: point = vec2(-shadow_vec.y, shadow_vec.x);
346: sh = 0.75 + (1.0 / 8.0);
347: }
348:
349: highp vec4 s = shadow_matrix * vec4(point, 0.0, 1.0);
350: s.xyz /= s.w;
351: su = s.x * 0.5 + 0.5;
352: sz = s.z * 0.5 + 0.5;
353: //sz=lightlength(light_vec);
354:
355: highp float shadow_attenuation = 0.0;
356:
357: #ifdef USE_RGBA_SHADOWS
358:
359: #define SHADOW_DEPTH(m_tex, m_uv) dot(texture((m_tex), (m_uv)), vec4(1.0 / (255.0 * 255.0 * 255.0), 1.0 / (255.0 * 255.0), 1.0 / 255.0, 1.0))
360:
361: #else
362:
363: #define SHADOW_DEPTH(m_tex, m_uv) (texture((m_tex), (m_uv)).r)
364:
365: #endif
366:
367: #ifdef SHADOW_USE_GRADIENT
368:
369: #define SHADOW_TEST(m_ofs) \
370: { \
371: highp float sd = SHADOW_DEPTH(shadow_texture, vec2(m_ofs, sh)); \
372: shadow_attenuation += 1.0 - smoothstep(sd, sd + shadow_gradient, sz); \
373: }
374:
375: #else
376:
377: #define SHADOW_TEST(m_ofs) \
378: { \
379: highp float sd = SHADOW_DEPTH(shadow_texture, vec2(m_ofs, sh)); \
380: shadow_attenuation += step(sz, sd); \
381: }
382:
383: #endif
384:
385: #ifdef SHADOW_FILTER_NEAREST
386:
387: SHADOW_TEST(su);
388:
389: #endif
390:
391: #ifdef SHADOW_FILTER_PCF3
392:
393: SHADOW_TEST(su + shadowpixel_size);
394: SHADOW_TEST(su);
395: SHADOW_TEST(su - shadowpixel_size);
396: shadow_attenuation /= 3.0;
397:
398: #endif
399:
400: #ifdef SHADOW_FILTER_PCF5
401:
402: SHADOW_TEST(su + shadowpixel_size * 2.0);
403: SHADOW_TEST(su + shadowpixel_size);
404: SHADOW_TEST(su);
405: SHADOW_TEST(su - shadowpixel_size);
406: SHADOW_TEST(su - shadowpixel_size * 2.0);
407: shadow_attenuation /= 5.0;
408:
409: #endif
410:
411: #ifdef SHADOW_FILTER_PCF7
412:
413: SHADOW_TEST(su + shadowpixel_size * 3.0);
414: SHADOW_TEST(su + shadowpixel_size * 2.0);
415: SHADOW_TEST(su + shadowpixel_size);
416: SHADOW_TEST(su);
417: SHADOW_TEST(su - shadowpixel_size);
418: SHADOW_TEST(su - shadowpixel_size * 2.0);
419: SHADOW_TEST(su - shadowpixel_size * 3.0);
420: shadow_attenuation /= 7.0;
421:
422: #endif
423:
424: #ifdef SHADOW_FILTER_PCF9
425:
426: SHADOW_TEST(su + shadowpixel_size * 4.0);
427: SHADOW_TEST(su + shadowpixel_size * 3.0);
428: SHADOW_TEST(su + shadowpixel_size * 2.0);
429: SHADOW_TEST(su + shadowpixel_size);
430: SHADOW_TEST(su);
431: SHADOW_TEST(su - shadowpixel_size);
432: SHADOW_TEST(su - shadowpixel_size * 2.0);
433: SHADOW_TEST(su - shadowpixel_size * 3.0);
434: SHADOW_TEST(su - shadowpixel_size * 4.0);
435: shadow_attenuation /= 9.0;
436:
437: #endif
438:
439: #ifdef SHADOW_FILTER_PCF13
440:
441: SHADOW_TEST(su + shadowpixel_size * 6.0);
442: SHADOW_TEST(su + shadowpixel_size * 5.0);
443: SHADOW_TEST(su + shadowpixel_size * 4.0);
444: SHADOW_TEST(su + shadowpixel_size * 3.0);
445: SHADOW_TEST(su + shadowpixel_size * 2.0);
446: SHADOW_TEST(su + shadowpixel_size);
447: SHADOW_TEST(su);
448: SHADOW_TEST(su - shadowpixel_size);
449: SHADOW_TEST(su - shadowpixel_size * 2.0);
450: SHADOW_TEST(su - shadowpixel_size * 3.0);
451: SHADOW_TEST(su - shadowpixel_size * 4.0);
452: SHADOW_TEST(su - shadowpixel_size * 5.0);
453: SHADOW_TEST(su - shadowpixel_size * 6.0);
454: shadow_attenuation /= 13.0;
455:
456: #endif
457:
458: //color *= shadow_attenuation;
459: color = mix(real_light_shadow_color, color, shadow_attenuation);
460: //use shadows
461: #endif
462: }
463:
464: //use lighting
465: #endif
466: //color.rgb *= color.a;
467: frag_color = color;
468: }
469:
ERROR: _display_error_with_code: CanvasShaderGLES3: Fragment Program Compilation Failed:
ERROR: 24:2: 'sampler2D' : precision statement not allowed for type
ERROR: 24:5: 'sampler2D' : precision statement not allowed for type
At: drivers/gles3/shader_gles3.cpp:164
ERROR: get_current_version: CanvasShaderGLES3: Fragment Program Compilation Failed:
ERROR: 24:2: 'sampler2D' : precision statement not allowed for type
ERROR: 24:5: 'sampler2D' : precision statement not allowed for type
At: drivers/gles3/shader_gles3.cpp:429
ERROR: get_current_version: Method failed. Returning: __null
At: drivers/gles3/shader_gles3.cpp:437
ERROR: bind: Condition "!version" is true. Returned: false
At: drivers/gles3/shader_gles3.cpp:123
ERROR: _get_uniform: Condition "!version" is true. Returned: -1
At: drivers/gles3/shader_gles3.h:379
ERROR: _get_uniform: Condition "!version" is true. Returned: -1
At: drivers/gles3/shader_gles3.h:379
ERROR: _get_uniform: Condition "!version" is true. Returned: -1
At: drivers/gles3/shader_gles3.h:379
ERROR: _get_uniform: Condition "!version" is true. Returned: -1
At: drivers/gles3/shader_gles3.h:379
ERROR: _get_uniform: Condition "!version" is true. Returned: -1
At: drivers/gles3/shader_gles3.h:379
ERROR: _get_uniform: Condition "!version" is true. Returned: -1
At: drivers/gles3/shader_gles3.h:379
ERROR: _get_uniform: Condition "!version" is true. Returned: -1
At: drivers/gles3/shader_gles3.h:379
1: #version 330
2: #define GLES_OVER_GL
3: precision highp float;
4: precision highp int;
5:
6: layout(location = 0) in highp vec2 vertex;
7: /* clang-format on */
8: layout(location = 3) in vec4 color_attrib;
9:
10: #ifdef USE_SKELETON
11: layout(location = 6) in uvec4 bone_indices; // attrib:6
12: layout(location = 7) in vec4 bone_weights; // attrib:7
13: #endif
14:
15: #ifdef USE_TEXTURE_RECT
16:
17: uniform vec4 dst_rect;
18: uniform vec4 src_rect;
19:
20: #else
21:
22: #ifdef USE_INSTANCING
23:
24: layout(location = 8) in highp vec4 instance_xform0;
25: layout(location = 9) in highp vec4 instance_xform1;
26: layout(location = 10) in highp vec4 instance_xform2;
27: layout(location = 11) in lowp vec4 instance_color;
28:
29: #ifdef USE_INSTANCE_CUSTOM
30: layout(location = 12) in highp vec4 instance_custom_data;
31: #endif
32:
33: #endif
34:
35: layout(location = 4) in highp vec2 uv_attrib;
36:
37: // skeleton
38: #endif
39:
40: uniform highp vec2 color_texpixel_size;
41:
42: layout(std140) uniform CanvasItemData { //ubo:0
43:
44: highp mat4 projection_matrix;
45: highp float time;
46: };
47:
48: uniform highp mat4 modelview_matrix;
49: uniform highp mat4 extra_matrix;
50:
51: out highp vec2 uv_interp;
52: out mediump vec4 color_interp;
53:
54: #ifdef USE_NINEPATCH
55:
56: out highp vec2 pixel_size_interp;
57: #endif
58:
59: #ifdef USE_SKELETON
60: uniform mediump sampler2D skeleton_texture; // texunit:-4
61: uniform highp mat4 skeleton_transform;
62: uniform highp mat4 skeleton_transform_inverse;
63: #endif
64:
65: #ifdef USE_LIGHTING
66:
67: layout(std140) uniform LightData { //ubo:1
68:
69: // light matrices
70: highp mat4 light_matrix;
71: highp mat4 light_local_matrix;
72: highp mat4 shadow_matrix;
73: highp vec4 light_color;
74: highp vec4 light_shadow_color;
75: highp vec2 light_pos;
76: highp float shadowpixel_size;
77: highp float shadow_gradient;
78: highp float light_height;
79: highp float light_outside_alpha;
80: highp float shadow_distance_mult;
81: };
82:
83: out vec4 light_uv_interp;
84: out vec2 transformed_light_uv;
85:
86: out vec4 local_rot;
87:
88: #ifdef USE_SHADOWS
89: out highp vec2 pos;
90: #endif
91:
92: const bool at_light_pass = true;
93: #else
94: const bool at_light_pass = false;
95: #endif
96:
97: #if defined(USE_MATERIAL)
98:
99: /* clang-format off */
100: layout(std140) uniform UniformData { //ubo:2
101:
102:
103: };
104: /* clang-format on */
105:
106: #endif
107:
108: /* clang-format off */
109:
110:
111: /* clang-format on */
112:
113: void main() {
114:
115: vec4 color = color_attrib;
116:
117: #ifdef USE_INSTANCING
118: mat4 extra_matrix_instance = extra_matrix * transpose(mat4(instance_xform0, instance_xform1, instance_xform2, vec4(0.0, 0.0, 0.0, 1.0)));
119: color *= instance_color;
120:
121: #ifdef USE_INSTANCE_CUSTOM
122: vec4 instance_custom = instance_custom_data;
123: #else
124: vec4 instance_custom = vec4(0.0);
125: #endif
126:
127: #else
128: mat4 extra_matrix_instance = extra_matrix;
129: vec4 instance_custom = vec4(0.0);
130: #endif
131:
132: #ifdef USE_TEXTURE_RECT
133:
134: if (dst_rect.z < 0.0) { // Transpose is encoded as negative dst_rect.z
135: uv_interp = src_rect.xy + abs(src_rect.zw) * vertex.yx;
136: } else {
137: uv_interp = src_rect.xy + abs(src_rect.zw) * vertex;
138: }
139: highp vec4 outvec = vec4(dst_rect.xy + abs(dst_rect.zw) * mix(vertex, vec2(1.0, 1.0) - vertex, lessThan(src_rect.zw, vec2(0.0, 0.0))), 0.0, 1.0);
140:
141: #else
142: uv_interp = uv_attrib;
143: highp vec4 outvec = vec4(vertex, 0.0, 1.0);
144: #endif
145:
146: #ifdef USE_PARTICLES
147: //scale by texture size
148: outvec.xy /= color_texpixel_size;
149: #endif
150:
151: #define extra_matrix extra_matrix_instance
152:
153: float point_size = 1.0;
154: //for compatibility with the fragment shader we need to use uv here
155: vec2 uv = uv_interp;
156: {
157: /* clang-format off */
158:
159:
160: /* clang-format on */
161: }
162:
163: gl_PointSize = point_size;
164: uv_interp = uv;
165:
166: #ifdef USE_NINEPATCH
167:
168: pixel_size_interp = abs(dst_rect.zw) * vertex;
169: #endif
170:
171: #if !defined(SKIP_TRANSFORM_USED)
172: outvec = extra_matrix * outvec;
173: outvec = modelview_matrix * outvec;
174: #endif
175:
176: #undef extra_matrix
177:
178: color_interp = color;
179:
180: #ifdef USE_PIXEL_SNAP
181: outvec.xy = floor(outvec + 0.5).xy;
182: // precision issue on some hardware creates artifacts within texture
183: // offset uv by a small amount to avoid
184: uv_interp += 1e-5;
185: #endif
186:
187: #ifdef USE_SKELETON
188:
189: if (bone_weights != vec4(0.0)) { //must be a valid bone
190: //skeleton transform
191:
192: ivec4 bone_indicesi = ivec4(bone_indices);
193:
194: ivec2 tex_ofs = ivec2(bone_indicesi.x % 256, (bone_indicesi.x / 256) * 2);
195:
196: highp mat2x4 m;
197: m = mat2x4(
198: texelFetch(skeleton_texture, tex_ofs, 0),
199: texelFetch(skeleton_texture, tex_ofs + ivec2(0, 1), 0)) *
200: bone_weights.x;
201:
202: tex_ofs = ivec2(bone_indicesi.y % 256, (bone_indicesi.y / 256) * 2);
203:
204: m += mat2x4(
205: texelFetch(skeleton_texture, tex_ofs, 0),
206: texelFetch(skeleton_texture, tex_ofs + ivec2(0, 1), 0)) *
207: bone_weights.y;
208:
209: tex_ofs = ivec2(bone_indicesi.z % 256, (bone_indicesi.z / 256) * 2);
210:
211: m += mat2x4(
212: texelFetch(skeleton_texture, tex_ofs, 0),
213: texelFetch(skeleton_texture, tex_ofs + ivec2(0, 1), 0)) *
214: bone_weights.z;
215:
216: tex_ofs = ivec2(bone_indicesi.w % 256, (bone_indicesi.w / 256) * 2);
217:
218: m += mat2x4(
219: texelFetch(skeleton_texture, tex_ofs, 0),
220: texelFetch(skeleton_texture, tex_ofs + ivec2(0, 1), 0)) *
221: bone_weights.w;
222:
223: mat4 bone_matrix = skeleton_transform * transpose(mat4(m[0], m[1], vec4(0.0, 0.0, 1.0, 0.0), vec4(0.0, 0.0, 0.0, 1.0))) * skeleton_transform_inverse;
224:
225: outvec = bone_matrix * outvec;
226: }
227:
228: #endif
229:
230: gl_Position = projection_matrix * outvec;
231:
232: #ifdef USE_LIGHTING
233:
234: light_uv_interp.xy = (light_matrix * outvec).xy;
235: light_uv_interp.zw = (light_local_matrix * outvec).xy;
236:
237: mat3 inverse_light_matrix = mat3(inverse(light_matrix));
238: inverse_light_matrix[0] = normalize(inverse_light_matrix[0]);
239: inverse_light_matrix[1] = normalize(inverse_light_matrix[1]);
240: inverse_light_matrix[2] = normalize(inverse_light_matrix[2]);
241: transformed_light_uv = (inverse_light_matrix * vec3(light_uv_interp.zw, 0.0)).xy; //for normal mapping
242:
243: #ifdef USE_SHADOWS
244: pos = outvec.xy;
245: #endif
246:
247: local_rot.xy = normalize((modelview_matrix * (extra_matrix_instance * vec4(1.0, 0.0, 0.0, 0.0))).xy);
248: local_rot.zw = normalize((modelview_matrix * (extra_matrix_instance * vec4(0.0, 1.0, 0.0, 0.0))).xy);
249: #ifdef USE_TEXTURE_RECT
250: local_rot.xy *= sign(src_rect.z);
251: local_rot.zw *= sign(src_rect.w);
252: #endif
253:
254: #endif
255: }
256:
257: /* clang-format off */
258:
ERROR: _display_error_with_code: CanvasShaderGLES3: Vertex Program Compilation Failed:
ERROR: 24:2: 'GL_ARB_explicit_attrib_location' : extension is disabled
ERROR: 24:4: 'GL_ARB_explicit_attrib_location' : extension is disabled
ERROR: 24:31: 'GL_ARB_explicit_attrib_location' : extension is disabled
At: drivers/gles3/shader_gles3.cpp:164
ERROR: get_current_version: Method failed. Returning: __null
At: drivers/gles3/shader_gles3.cpp:342
ERROR: bind: Condition "!version" is true. Returned: false
At: drivers/gles3/shader_gles3.cpp:123
ERROR: _get_uniform: Condition "!version" is true. Returned: -1
At: drivers/gles3/shader_gles3.h:379
ERROR: _get_uniform: Condition "!version" is true. Returned: -1
At: drivers/gles3/shader_gles3.h:379
ERROR: _get_uniform: Condition "!version" is true. Returned: -1
At: drivers/gles3/shader_gles3.h:379
ERROR: _get_uniform: Condition "!version" is true. Returned: -1
At: drivers/gles3/shader_gles3.h:379
ERROR: _get_uniform: Condition "!version" is true. Returned: -1
At: drivers/gles3/shader_gles3.h:379
ERROR: _get_uniform: Condition "!version" is true. Returned: -1
At: drivers/gles3/shader_gles3.h:379
ERROR: _get_uniform: Condition "!version" is true. Returned: -1
At: drivers/gles3/shader_gles3.h:379
ERROR: _get_uniform: Condition "!version" is true. Returned: -1
At: drivers/gles3/shader_gles3.h:379
ERROR: _get_uniform: Condition "!version" is true. Returned: -1
At: drivers/gles3/shader_gles3.h:379
ERROR: _get_uniform: Condition "!version" is true. Returned: -1
At: drivers/gles3/shader_gles3.h:379
ERROR: _get_uniform: Condition "!version" is true. Returned: -1
At: drivers/gles3/shader_gles3.h:379
AIDA64 opengl report
//////////////////////////////////////////////////////////////////
Field Value
OpenGL Properties
Vendor Intel
Renderer Intel(R) HD Graphics
Version 3.3.0 - Build 8.15.10.2778
Shading Language Version 3.30 - Intel Build 8.15.10.2778
OpenGL DLL 6.1.7600.16385(win7_rtm.090713-1255)
Multitexture Texture Units 8
Occlusion Query Counter Bits 64
Sub-Pixel Precision 4-bit
Max Viewport Size 8192 x 8192
Max Cube Map Texture Size 8192 x 8192
Max Rectangle Texture Size 8192 x 8192
Max 3D Texture Size 2048 x 2048 x 2048
Max Anisotropy 16
Max Clipping Planes 6
Max Display-List Nesting Level 64
Max Draw Buffers 8
Max Evaluator Order 32
Max Light Sources 8
Max Pixel Map Table Size 65536
Max Texture Array Layers 256
Max Texture LOD Bias 15
OpenGL Compliancy
OpenGL 1.1 Yes (100%)
OpenGL 1.2 Yes (100%)
OpenGL 1.3 Yes (100%)
OpenGL 1.4 Yes (100%)
OpenGL 1.5 Yes (100%)
OpenGL 2.0 Yes (100%)
OpenGL 2.1 Yes (100%)
OpenGL 3.0 Yes (100%)
OpenGL 3.1 Yes (100%)
OpenGL 3.2 Yes (100%)
OpenGL 3.3 Yes (100%)
OpenGL 4.0 No (15%)
OpenGL 4.1 No (0%)
Max Stack Depth
Attribute Stack 16
Client Attribute Stack 16
Modelview Matrix Stack 32
Name Stack 128
Projection Matrix Stack 4
Texture Matrix Stack 10
Draw Range Elements
Max Index Count 1200
Max Vertex Count 1200
Transform Feedback
Max Interleaved Components 64
Max Separate Attributes 4
Max Separate Components 4
Framebuffer Object
Max Color Attachments 8
Max Render Buffer Size 4096 x 4096
Vertex Shader
Max Uniform Vertex Components 1024
Max Varying Floats 41
Max Vertex Texture Image Units 16
Max Combined Texture Image Units 16
Geometry Shader
Max Geometry Texture Units 16
Max Varying Components 41
Max Geometry Varying Components 32
Max Vertex Varying Components 32
Max Geometry Uniform Components 512
Max Geometry Output Vertices 256
Max Geometry Total Output Components 1024
Fragment Shader
Max Uniform Fragment Components 1024
Vertex Program
Max Local Parameters 256
Max Environment Parameters 300
Max Program Matrices 8
Max Program Matrix Stack Depth 2
Max Vertex Attributes 16
Max Instructions 1024
Max Native Instructions 1024
Max Temporaries 31
Max Native Temporaries 31
Max Parameters 512
Max Native Parameters 400
Max Attributes 16
Max Native Attributes 16
Max Address Registers 1
Max Native Address Registers 1
Fragment Program
Max Local Parameters 256
Max Environment Parameters 256
Max Texture Coordinates 8
Max Texture Image Units 16
Max Instructions 1447
Max Native Instructions 1447
Max Temporaries 256
Max Native Temporaries 256
Max Parameters 512
Max Native Parameters 32
Max Attributes 13
Max Native Attributes 13
Max Address Registers 0
Max Native Address Registers 0
Max ALU Instructions 1447
Max Native ALU Instructions 1447
Max Texture Instructions 1447
Max Native Texture Instructions 1447
Max Texture Indirections 128
Max Native Texture Indirections 128
OpenGL Extensions
GL_3DFX_multisample Not Supported
GL_3DFX_tbuffer Not Supported
GL_3DFX_texture_compression_FXT1 Supported
GL_3DL_direct_texture_access2 Not Supported
GL_3Dlabs_multisample_transparency_id Not Supported
GL_3Dlabs_multisample_transparency_range Not Supported
GL_AMD_blend_minmax_factor Not Supported
GL_AMD_conservative_depth Not Supported
GL_AMD_debug_output Not Supported
GL_AMD_depth_clamp_separate Not Supported
GL_AMD_draw_buffers_blend Not Supported
GL_AMD_name_gen_delete Not Supported
GL_AMD_performance_monitor Not Supported
GL_AMD_sample_positions Not Supported
GL_AMD_seamless_cubemap_per_texture Not Supported
GL_AMD_shader_stencil_export Not Supported
GL_AMD_shader_trace Not Supported
GL_AMD_texture_compression_dxt6 Not Supported
GL_AMD_texture_compression_dxt7 Not Supported
GL_AMD_texture_cube_map_array Not Supported
GL_AMD_texture_texture4 Not Supported
GL_AMD_transform_feedback3_lines_triangles Not Supported
GL_AMD_vertex_shader_tessellator Not Supported
GL_AMDX_debug_output Not Supported
GL_AMDX_name_gen_delete Not Supported
GL_AMDX_random_access_target Not Supported
GL_AMDX_vertex_shader_tessellator Not Supported
GL_APPLE_aux_depth_stencil Not Supported
GL_APPLE_client_storage Not Supported
GL_APPLE_element_array Not Supported
GL_APPLE_fence Not Supported
GL_APPLE_float_pixels Not Supported
GL_APPLE_flush_buffer_range Not Supported
GL_APPLE_flush_render Not Supported
GL_APPLE_object_purgeable Not Supported
GL_APPLE_packed_pixel Not Supported
GL_APPLE_packed_pixels Not Supported
GL_APPLE_pixel_buffer Not Supported
GL_APPLE_rgb_422 Not Supported
GL_APPLE_specular_vector Not Supported
GL_APPLE_texture_range Not Supported
GL_APPLE_transform_hint Not Supported
GL_APPLE_vertex_array_object Not Supported
GL_APPLE_vertex_array_range Not Supported
GL_APPLE_vertex_program_evaluators Not Supported
GL_APPLE_ycbcr_422 Not Supported
GL_ARB_blend_func_extended Supported
GL_ARB_color_buffer_float Supported
GL_ARB_compatibility Supported
GL_ARB_copy_buffer Supported
GL_ARB_debug_output Not Supported
GL_ARB_depth_buffer_float Supported
GL_ARB_depth_clamp Supported
GL_ARB_depth_texture Supported
GL_ARB_draw_buffers Supported
GL_ARB_draw_buffers_blend Supported
GL_ARB_draw_elements_base_vertex Supported
GL_ARB_draw_indirect Not Supported
GL_ARB_draw_instanced Supported
GL_ARB_ES2_compatibility Not Supported
**GL_ARB_explicit_attrib_location Supported**
GL_ARB_fragment_coord_conventions Supported
GL_ARB_fragment_program Supported
GL_ARB_fragment_program_shadow Supported
GL_ARB_fragment_shader Supported
GL_ARB_framebuffer_object Supported
GL_ARB_framebuffer_sRGB Supported
GL_ARB_geometry_shader4 Supported
GL_ARB_get_program_binary Not Supported
GL_ARB_gpu_shader_fp64 Not Supported
GL_ARB_gpu_shader5 Not Supported
GL_ARB_half_float_pixel Supported
GL_ARB_half_float_vertex Supported
GL_ARB_imaging Not Supported
GL_ARB_instanced_arrays Supported
GL_ARB_make_current_read Not Supported
GL_ARB_map_buffer_range Supported
GL_ARB_matrix_palette Not Supported
GL_ARB_multisample Supported
GL_ARB_multitexture Supported
GL_ARB_occlusion_query Supported
GL_ARB_occlusion_query2 Supported
GL_ARB_pixel_buffer_object Supported
GL_ARB_point_parameters Supported
GL_ARB_point_sprite Supported
GL_ARB_provoking_vertex Supported
GL_ARB_robustness Not Supported
GL_ARB_sample_shading Not Supported
GL_ARB_sampler_objects Supported
GL_ARB_seamless_cube_map Supported
GL_ARB_separate_shader_objects Not Supported
GL_ARB_shader_atomic_counters Not Supported
GL_ARB_shader_bit_encoding Supported
GL_ARB_shader_objects Supported
GL_ARB_shader_precision Not Supported
GL_ARB_shader_stencil_export Not Supported
GL_ARB_shader_subroutine Not Supported
GL_ARB_shader_texture_lod Not Supported
GL_ARB_shading_language_100 Supported
GL_ARB_shading_language_120 Not Supported
GL_ARB_shading_language_include Not Supported
GL_ARB_shadow Supported
GL_ARB_shadow_ambient Not Supported
GL_ARB_swap_buffers Not Supported
GL_ARB_sync Supported
GL_ARB_tessellation_shader Not Supported
GL_ARB_texture_border_clamp Supported
GL_ARB_texture_buffer_object Not Supported
GL_ARB_texture_buffer_object_rgb32 Supported
GL_ARB_texture_compression Supported
GL_ARB_texture_compression_bptc Not Supported
GL_ARB_texture_compression_rgtc Supported
GL_ARB_texture_cube_map Supported
GL_ARB_texture_cube_map_array Not Supported
GL_ARB_texture_env_add Supported
GL_ARB_texture_env_combine Supported
GL_ARB_texture_env_crossbar Supported
GL_ARB_texture_env_dot3 Supported
GL_ARB_texture_float Supported
GL_ARB_texture_gather Not Supported
GL_ARB_texture_mirrored_repeat Not Supported
GL_ARB_texture_multisample Supported
GL_ARB_texture_non_power_of_two Supported
GL_ARB_texture_query_lod Supported
GL_ARB_texture_rectangle Supported
GL_ARB_texture_rg Supported
GL_ARB_texture_rgb10_a2ui Supported
GL_ARB_texture_snorm Not Supported
GL_ARB_texture_swizzle Not Supported
GL_ARB_timer_query Supported
GL_ARB_transform_feedback2 Not Supported
GL_ARB_transform_feedback3 Not Supported
GL_ARB_transpose_matrix Supported
GL_ARB_uber_buffers Not Supported
GL_ARB_uber_mem_image Not Supported
GL_ARB_uber_vertex_array Not Supported
GL_ARB_uniform_buffer_object Supported
GL_ARB_vertex_array_bgra Supported
GL_ARB_vertex_array_object Supported
GL_ARB_vertex_attrib_64bit Not Supported
GL_ARB_vertex_blend Not Supported
GL_ARB_vertex_buffer_object Supported
GL_ARB_vertex_program Supported
GL_ARB_vertex_shader Supported
GL_ARB_vertex_type_2_10_10_10_rev Supported
GL_ARB_viewport_array Not Supported
GL_ARB_window_pos Supported
GL_ATI_array_rev_comps_in_4_bytes Not Supported
GL_ATI_blend_equation_separate Not Supported
GL_ATI_blend_weighted_minmax Not Supported
GL_ATI_draw_buffers Not Supported
GL_ATI_element_array Not Supported
GL_ATI_envmap_bumpmap Not Supported
GL_ATI_fragment_shader Not Supported
GL_ATI_lock_texture Not Supported
GL_ATI_map_object_buffer Not Supported
GL_ATI_meminfo Not Supported
GL_ATI_pixel_format_float Not Supported
GL_ATI_pn_triangles Not Supported
GL_ATI_point_cull_mode Not Supported
GL_ATI_separate_stencil Supported
GL_ATI_shader_texture_lod Not Supported
GL_ATI_text_fragment_shader Not Supported
GL_ATI_texture_compression_3dc Not Supported
GL_ATI_texture_env_combine3 Not Supported
GL_ATI_texture_float Not Supported
GL_ATI_texture_mirror_once Not Supported
GL_ATI_vertex_array_object Not Supported
GL_ATI_vertex_attrib_array_object Not Supported
GL_ATI_vertex_blend Not Supported
GL_ATI_vertex_shader Not Supported
GL_ATI_vertex_streams Not Supported
GL_ATIX_pn_triangles Not Supported
GL_ATIX_texture_env_combine3 Not Supported
GL_ATIX_texture_env_route Not Supported
GL_ATIX_vertex_shader_output_point_size Not Supported
GL_Autodesk_facet_normal Not Supported
GL_Autodesk_valid_back_buffer_hint Not Supported
GL_DIMD_YUV Not Supported
GL_EXT_422_pixels Not Supported
GL_EXT_abgr Supported
GL_EXT_bgra Supported
GL_EXT_bindable_uniform Not Supported
GL_EXT_blend_color Supported
GL_EXT_blend_equation_separate Supported
GL_EXT_blend_func_separate Supported
GL_EXT_blend_logic_op Not Supported
GL_EXT_blend_minmax Supported
GL_EXT_blend_subtract Supported
GL_EXT_Cg_shader Not Supported
GL_EXT_clip_volume_hint Supported
GL_EXT_cmyka Not Supported
GL_EXT_color_matrix Not Supported
GL_EXT_color_subtable Not Supported
GL_EXT_color_table Not Supported
GL_EXT_compiled_vertex_array Supported
GL_EXT_convolution Not Supported
GL_EXT_convolution_border_modes Not Supported
GL_EXT_coordinate_frame Not Supported
GL_EXT_copy_buffer Not Supported
GL_EXT_copy_texture Not Supported
GL_EXT_cull_vertex Not Supported
GL_EXT_depth_bounds_test Not Supported
GL_EXT_depth_buffer_float Not Supported
GL_EXT_direct_state_access Not Supported
GL_EXT_draw_buffers2 Supported
GL_EXT_draw_indirect Not Supported
GL_EXT_draw_instanced Not Supported
GL_EXT_draw_range_elements Supported
GL_EXT_fog_coord Supported
GL_EXT_fog_function Not Supported
GL_EXT_fog_offset Not Supported
GL_EXT_fragment_lighting Not Supported
GL_EXT_framebuffer_blit Supported
GL_EXT_framebuffer_multisample Supported
GL_EXT_framebuffer_object Supported
GL_EXT_framebuffer_sRGB Not Supported
GL_EXT_generate_mipmap Not Supported
GL_EXT_geometry_shader4 Not Supported
GL_EXT_gpu_program_parameters Supported
GL_EXT_gpu_shader_fp64 Not Supported
GL_EXT_gpu_shader4 Not Supported
GL_EXT_gpu_shader5 Not Supported
GL_EXT_histogram Not Supported
GL_EXT_index_array_formats Not Supported
GL_EXT_index_func Not Supported
GL_EXT_index_material Not Supported
GL_EXT_index_texture Not Supported
GL_EXT_interlace Not Supported
GL_EXT_light_texture Not Supported
GL_EXT_misc_attribute Not Supported
GL_EXT_multi_draw_arrays Supported
GL_EXT_multisample Not Supported
GL_EXT_packed_depth_stencil Supported
GL_EXT_packed_float Supported
GL_EXT_packed_pixels Supported
GL_EXT_packed_pixels_12 Not Supported
GL_EXT_paletted_texture Not Supported
GL_EXT_pixel_buffer_object Not Supported
GL_EXT_pixel_format Not Supported
GL_EXT_pixel_texture Not Supported
GL_EXT_pixel_transform Not Supported
GL_EXT_pixel_transform_color_table Not Supported
GL_EXT_point_parameters Not Supported
GL_EXT_polygon_offset Not Supported
GL_EXT_provoking_vertex Not Supported
GL_EXT_rescale_normal Supported
GL_EXT_scene_marker Not Supported
GL_EXT_secondary_color Supported
GL_EXT_separate_shader_objects Not Supported
GL_EXT_separate_specular_color Supported
GL_EXT_shader_atomic_counters Not Supported
GL_EXT_shader_image_load_store Not Supported
GL_EXT_shader_subroutine Not Supported
GL_EXT_shadow_funcs Supported
GL_EXT_shared_texture_palette Not Supported
GL_EXT_stencil_clear_tag Not Supported
GL_EXT_stencil_two_side Supported
GL_EXT_stencil_wrap Supported
GL_EXT_subtexture Not Supported
GL_EXT_swap_control Not Supported
GL_EXT_tessellation_shader Not Supported
GL_EXT_texgen_reflection Not Supported
GL_EXT_texture Not Supported
GL_EXT_texture_array Supported
GL_EXT_texture_border_clamp Not Supported
GL_EXT_texture_buffer_object Not Supported
GL_EXT_texture_buffer_object_rgb32 Not Supported
GL_EXT_texture_color_table Not Supported
GL_EXT_texture_compression_bptc Not Supported
GL_EXT_texture_compression_dxt1 Not Supported
GL_EXT_texture_compression_latc Not Supported
GL_EXT_texture_compression_rgtc Not Supported
GL_EXT_texture_compression_s3tc Supported
GL_EXT_texture_cube_map Not Supported
GL_EXT_texture_edge_clamp Supported
GL_EXT_texture_env Not Supported
GL_EXT_texture_env_add Supported
GL_EXT_texture_env_combine Supported
GL_EXT_texture_env_dot3 Not Supported
GL_EXT_texture_filter_anisotropic Supported
GL_EXT_texture_integer Supported
GL_EXT_texture_lod Not Supported
GL_EXT_texture_lod_bias Supported
GL_EXT_texture_mirror_clamp Not Supported
GL_EXT_texture_object Not Supported
GL_EXT_texture_perturb_normal Not Supported
GL_EXT_texture_rectangle Supported
GL_EXT_texture_shared_exponent Supported
GL_EXT_texture_snorm Supported
GL_EXT_texture_sRGB Supported
GL_EXT_texture_swizzle Supported
GL_EXT_texture3D Supported
GL_EXT_texture4D Not Supported
GL_EXT_timer_query Not Supported
GL_EXT_transform_feedback Supported
GL_EXT_transform_feedback2 Not Supported
GL_EXT_transform_feedback3 Not Supported
GL_EXT_vertex_array Not Supported
GL_EXT_vertex_array_bgra Not Supported
GL_EXT_vertex_attrib_64bit Not Supported
GL_EXT_vertex_shader Not Supported
GL_EXT_vertex_weighting Not Supported
GL_EXTX_framebuffer_mixed_formats Not Supported
GL_EXTX_packed_depth_stencil Not Supported
GL_FGL_lock_texture Not Supported
GL_GL2_geometry_shader Not Supported
GL_GREMEDY_frame_terminator Not Supported
GL_GREMEDY_string_marker Not Supported
GL_HP_convolution_border_modes Not Supported
GL_HP_image_transform Not Supported
GL_HP_occlusion_test Not Supported
GL_HP_texture_lighting Not Supported
GL_I3D_argb Not Supported
GL_I3D_color_clamp Not Supported
GL_I3D_interlace_read Not Supported
GL_IBM_clip_check Not Supported
GL_IBM_cull_vertex Not Supported
GL_IBM_load_named_matrix Not Supported
GL_IBM_multi_draw_arrays Not Supported
GL_IBM_multimode_draw_arrays Not Supported
GL_IBM_occlusion_cull Not Supported
GL_IBM_pixel_filter_hint Not Supported
GL_IBM_rasterpos_clip Not Supported
GL_IBM_rescale_normal Not Supported
GL_IBM_static_data Not Supported
GL_IBM_texture_clamp_nodraw Not Supported
GL_IBM_texture_mirrored_repeat Supported
GL_IBM_vertex_array_lists Not Supported
GL_IBM_YCbCr Not Supported
GL_IMG_read_format Not Supported
GL_IMG_texture_compression_pvrtc Not Supported
GL_IMG_texture_env_enhanced_fixed_function Not Supported
GL_IMG_texture_format_BGRA8888 Not Supported
GL_IMG_user_clip_planes Not Supported
GL_IMG_vertex_program Not Supported
GL_INGR_blend_func_separate Not Supported
GL_INGR_color_clamp Not Supported
GL_INGR_interlace_read Not Supported
GL_INGR_multiple_palette Not Supported
GL_INTEL_parallel_arrays Not Supported
GL_INTEL_performance_queries Supported
GL_INTEL_texture_scissor Not Supported
GL_KTX_buffer_region Not Supported
GL_MESA_pack_invert Not Supported
GL_MESA_program_debug Not Supported
GL_MESA_resize_buffers Not Supported
GL_MESA_window_pos Not Supported
GL_MESA_ycbcr_texture Not Supported
GL_MESAX_texture_stack Not Supported
GL_MTX_fragment_shader Not Supported
GL_MTX_precision_dpi Not Supported
GL_NV_blend_square Supported
GL_NV_centroid_sample Not Supported
GL_NV_conditional_render Supported
GL_NV_copy_depth_to_color Not Supported
GL_NV_copy_image Not Supported
GL_NV_depth_buffer_float Not Supported
GL_NV_depth_clamp Not Supported
GL_NV_depth_range_unclamped Not Supported
GL_NV_evaluators Not Supported
GL_NV_explicit_multisample Not Supported
GL_NV_fence Not Supported
GL_NV_float_buffer Not Supported
GL_NV_fog_distance Not Supported
GL_NV_fragment_program Not Supported
GL_NV_fragment_program_option Not Supported
GL_NV_fragment_program2 Not Supported
GL_NV_fragment_program4 Not Supported
GL_NV_framebuffer_multisample_coverage Not Supported
GL_NV_framebuffer_multisample_ex Not Supported
GL_NV_geometry_program4 Not Supported
GL_NV_geometry_shader4 Not Supported
GL_NV_gpu_program_fp64 Not Supported
GL_NV_gpu_program4 Not Supported
GL_NV_gpu_program4_1 Not Supported
GL_NV_gpu_program5 Not Supported
GL_NV_gpu_shader5 Not Supported
GL_NV_half_float Not Supported
GL_NV_light_max_exponent Not Supported
GL_NV_multisample_coverage Not Supported
GL_NV_multisample_filter_hint Not Supported
GL_NV_occlusion_query Not Supported
GL_NV_packed_depth_stencil Not Supported
GL_NV_parameter_buffer_object Not Supported
GL_NV_parameter_buffer_object2 Not Supported
GL_NV_pixel_buffer_object Not Supported
GL_NV_pixel_data_range Not Supported
GL_NV_point_sprite Not Supported
GL_NV_present_video Not Supported
GL_NV_primitive_restart Supported
GL_NV_register_combiners Not Supported
GL_NV_register_combiners2 Not Supported
GL_NV_shader_buffer_load Not Supported
GL_NV_shader_buffer_store Not Supported
GL_NV_tessellation_program5 Not Supported
GL_NV_texgen_emboss Not Supported
GL_NV_texgen_reflection Supported
GL_NV_texture_barrier Not Supported
GL_NV_texture_compression_latc Not Supported
GL_NV_texture_compression_vtc Not Supported
GL_NV_texture_env_combine4 Not Supported
GL_NV_texture_expand_normal Not Supported
GL_NV_texture_multisample Not Supported
GL_NV_texture_rectangle Not Supported
GL_NV_texture_shader Not Supported
GL_NV_texture_shader2 Not Supported
GL_NV_texture_shader3 Not Supported
GL_NV_timer_query Not Supported
GL_NV_transform_feedback Not Supported
GL_NV_transform_feedback2 Not Supported
GL_NV_vdpau_interop Not Supported
GL_NV_vertex_array_range Not Supported
GL_NV_vertex_array_range2 Not Supported
GL_NV_vertex_attrib_64bit Not Supported
GL_NV_vertex_attrib_integer_64bit Not Supported
GL_NV_vertex_buffer_unified_memory Not Supported
GL_NV_vertex_program Not Supported
GL_NV_vertex_program1_1 Not Supported
GL_NV_vertex_program2 Not Supported
GL_NV_vertex_program2_option Not Supported
GL_NV_vertex_program3 Not Supported
GL_NV_vertex_program4 Not Supported
GL_NVX_conditional_render Not Supported
GL_NVX_flush_hold Not Supported
GL_NVX_gpu_memory_info Not Supported
GL_NVX_instanced_arrays Not Supported
GL_NVX_ycrcb Not Supported
GL_OES_blend_subtract Not Supported
GL_OES_byte_coordinates Not Supported
GL_OES_compressed_paletted_texture Not Supported
GL_OES_conditional_query Not Supported
GL_OES_depth24 Not Supported
GL_OES_draw_texture Not Supported
GL_OES_fixed_point Not Supported
GL_OES_framebuffer_object Not Supported
GL_OES_mapbuffer Not Supported
GL_OES_matrix_get Not Supported
GL_OES_matrix_palette Not Supported
GL_OES_point_size_array Not Supported
GL_OES_point_sprite Not Supported
GL_OES_query_matrix Not Supported
GL_OES_read_format Not Supported
GL_OES_rgb8_rgba8 Not Supported
GL_OES_single_precision Not Supported
GL_OES_texture_mirrored_repeat Not Supported
GL_OML_interlace Not Supported
GL_OML_resample Not Supported
GL_OML_subsample Not Supported
GL_PGI_misc_hints Not Supported
GL_PGI_vertex_hints Not Supported
GL_REND_screen_coordinates Not Supported
GL_S3_performance_analyzer Not Supported
GL_S3_s3tc Not Supported
GL_SGI_color_matrix Not Supported
GL_SGI_color_table Not Supported
GL_SGI_compiled_vertex_array Not Supported
GL_SGI_cull_vertex Not Supported
GL_SGI_index_array_formats Not Supported
GL_SGI_index_func Not Supported
GL_SGI_index_material Not Supported
GL_SGI_index_texture Not Supported
GL_SGI_make_current_read Not Supported
GL_SGI_texture_add_env Not Supported
GL_SGI_texture_color_table Not Supported
GL_SGI_texture_edge_clamp Not Supported
GL_SGI_texture_lod Not Supported
GL_SGIS_color_range Not Supported
GL_SGIS_detail_texture Not Supported
GL_SGIS_fog_function Not Supported
GL_SGIS_generate_mipmap Supported
GL_SGIS_multisample Not Supported
GL_SGIS_multitexture Not Supported
GL_SGIS_pixel_texture Not Supported
GL_SGIS_point_line_texgen Not Supported
GL_SGIS_sharpen_texture Not Supported
GL_SGIS_texture_border_clamp Not Supported
GL_SGIS_texture_color_mask Not Supported
GL_SGIS_texture_edge_clamp Supported
GL_SGIS_texture_filter4 Not Supported
GL_SGIS_texture_lod Supported
GL_SGIS_texture_select Not Supported
GL_SGIS_texture4D Not Supported
GL_SGIX_async Not Supported
GL_SGIX_async_histogram Not Supported
GL_SGIX_async_pixel Not Supported
GL_SGIX_blend_alpha_minmax Not Supported
GL_SGIX_clipmap Not Supported
GL_SGIX_convolution_accuracy Not Supported
GL_SGIX_depth_pass_instrument Not Supported
GL_SGIX_depth_texture Not Supported
GL_SGIX_flush_raster Not Supported
GL_SGIX_fog_offset Not Supported
GL_SGIX_fog_texture Not Supported
GL_SGIX_fragment_specular_lighting Not Supported
GL_SGIX_framezoom Not Supported
GL_SGIX_instruments Not Supported
GL_SGIX_interlace Not Supported
GL_SGIX_ir_instrument1 Not Supported
GL_SGIX_list_priority Not Supported
GL_SGIX_pbuffer Not Supported
GL_SGIX_pixel_texture Not Supported
GL_SGIX_pixel_texture_bits Not Supported
GL_SGIX_reference_plane Not Supported
GL_SGIX_resample Not Supported
GL_SGIX_shadow Not Supported
GL_SGIX_shadow_ambient Not Supported
GL_SGIX_sprite Not Supported
GL_SGIX_subsample Not Supported
GL_SGIX_tag_sample_buffer Not Supported
GL_SGIX_texture_add_env Not Supported
GL_SGIX_texture_coordinate_clamp Not Supported
GL_SGIX_texture_lod_bias Not Supported
GL_SGIX_texture_multi_buffer Not Supported
GL_SGIX_texture_range Not Supported
GL_SGIX_texture_scale_bias Not Supported
GL_SGIX_vertex_preclip Not Supported
GL_SGIX_vertex_preclip_hint Not Supported
GL_SGIX_ycrcb Not Supported
GL_SGIX_ycrcb_subsample Not Supported
GL_SUN_convolution_border_modes Not Supported
GL_SUN_global_alpha Not Supported
GL_SUN_mesh_array Not Supported
GL_SUN_multi_draw_arrays Not Supported
GL_SUN_read_video_pixels Not Supported
GL_SUN_slice_accum Not Supported
GL_SUN_triangle_list Not Supported
GL_SUN_vertex Not Supported
GL_SUNX_constant_data Not Supported
GL_WGL_ARB_extensions_string Not Supported
GL_WGL_EXT_extensions_string Not Supported
GL_WGL_EXT_swap_control Not Supported
GL_WIN_phong_shading Not Supported
GL_WIN_specular_fog Not Supported
GL_WIN_swap_hint Supported
GLU_EXT_nurbs_tessellator Not Supported
GLU_EXT_object_space_tess Not Supported
GLU_SGI_filter4_parameters Not Supported
GLX_ARB_create_context Not Supported
GLX_ARB_fbconfig_float Not Supported
GLX_ARB_framebuffer_sRGB Not Supported
GLX_ARB_get_proc_address Not Supported
GLX_ARB_multisample Not Supported
GLX_EXT_fbconfig_packed_float Not Supported
GLX_EXT_framebuffer_sRGB Not Supported
GLX_EXT_import_context Not Supported
GLX_EXT_scene_marker Not Supported
GLX_EXT_texture_from_pixmap Not Supported
GLX_EXT_visual_info Not Supported
GLX_EXT_visual_rating Not Supported
GLX_MESA_agp_offset Not Supported
GLX_MESA_copy_sub_buffer Not Supported
GLX_MESA_pixmap_colormap Not Supported
GLX_MESA_release_buffers Not Supported
GLX_MESA_set_3dfx_mode Not Supported
GLX_NV_present_video Not Supported
GLX_NV_swap_group Not Supported
GLX_NV_video_output Not Supported
GLX_OML_swap_method Not Supported
GLX_OML_sync_control Not Supported
GLX_SGI_cushion Not Supported
GLX_SGI_make_current_read Not Supported
GLX_SGI_swap_control Not Supported
GLX_SGI_video_sync Not Supported
GLX_SGIS_blended_overlay Not Supported
GLX_SGIS_color_range Not Supported
GLX_SGIS_multisample Not Supported
GLX_SGIX_dm_buffer Not Supported
GLX_SGIX_fbconfig Not Supported
GLX_SGIX_hyperpipe Not Supported
GLX_SGIX_pbuffer Not Supported
GLX_SGIX_swap_barrier Not Supported
GLX_SGIX_swap_group Not Supported
GLX_SGIX_video_resize Not Supported
GLX_SGIX_video_source Not Supported
GLX_SGIX_visual_select_group Not Supported
GLX_SUN_get_transparent_index Not Supported
GLX_SUN_video_resize Not Supported
WGL_3DFX_gamma_control Not Supported
WGL_3DFX_multisample Not Supported
WGL_3DL_stereo_control Not Supported
WGL_AMD_gpu_association Not Supported
WGL_AMDX_gpu_association Not Supported
WGL_ARB_buffer_region Supported
WGL_ARB_create_context Supported
WGL_ARB_create_context_profile Not Supported
WGL_ARB_create_context_robustness Not Supported
WGL_ARB_extensions_string Supported
WGL_ARB_framebuffer_sRGB Supported
WGL_ARB_make_current_read Supported
WGL_ARB_multisample Supported
WGL_ARB_pbuffer Supported
WGL_ARB_pixel_format Supported
WGL_ARB_pixel_format_float Supported
WGL_ARB_render_texture Not Supported
WGL_ATI_pbuffer_memory_hint Not Supported
WGL_ATI_pixel_format_float Not Supported
WGL_ATI_render_texture_rectangle Not Supported
WGL_EXT_buffer_region Not Supported
WGL_EXT_create_context_es2_profile Not Supported
WGL_EXT_depth_float Supported
WGL_EXT_display_color_table Not Supported
WGL_EXT_extensions_string Supported
WGL_EXT_framebuffer_sRGB Not Supported
WGL_EXT_framebuffer_sRGBWGL_ARB_create_context Not Supported
WGL_EXT_gamma_control Not Supported
WGL_EXT_make_current_read Not Supported
WGL_EXT_multisample Not Supported
WGL_EXT_pbuffer Not Supported
WGL_EXT_pixel_format Not Supported
WGL_EXT_pixel_format_packed_float Supported
WGL_EXT_render_texture Not Supported
WGL_EXT_swap_control Supported
WGL_EXT_swap_control_tear Supported
WGL_EXT_swap_interval Not Supported
WGL_I3D_digital_video_control Not Supported
WGL_I3D_gamma Not Supported
WGL_I3D_genlock Not Supported
WGL_I3D_image_buffer Not Supported
WGL_I3D_swap_frame_lock Not Supported
WGL_I3D_swap_frame_usage Not Supported
WGL_MTX_video_preview Not Supported
WGL_NV_copy_image Not Supported
WGL_NV_DX_interop Not Supported
WGL_NV_float_buffer Not Supported
WGL_NV_gpu_affinity Not Supported
WGL_NV_multisample_coverage Not Supported
WGL_NV_present_video Not Supported
WGL_NV_render_depth_texture Not Supported
WGL_NV_render_texture_rectangle Not Supported
WGL_NV_swap_group Not Supported
WGL_NV_vertex_array_range Not Supported
WGL_NV_video_output Not Supported
WGL_NVX_DX_interop Not Supported
WGL_OML_sync_control Not Supported
Supported Compressed Texture Formats
RGB DXT1 Supported
RGBA DXT1 Supported
RGBA DXT3 Supported
RGBA DXT5 Supported
RGB FXT1 Supported
RGBA FXT1 Supported
3Dc Not Supported
Video Adapter Manufacturer
Company Name Intel Corporation
Product Information http://www.intel.com/products/chipsets
Driver Download http://support.intel.com/support/graphics
Driver Update http://www.aida64.com/driver-updates
@peeterdog Old Intel IGPs have lots of troubles with modern OpenGL. I recommend sticking with GLES2.
Closing due to lack of response from @komputerboy. This issue can be reopened if they provide the requested information (see the comments above).
I have download official Godot engine from
after that, i cannot open the program with this error.
I am using window 7 ultimate 64 bit with NVIDIA GT 630M