summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJean-Philippe Andre <jp.andre@samsung.com>2014-11-27 20:46:10 +0900
committerJean-Philippe Andre <jp.andre@samsung.com>2014-11-27 21:07:24 +0900
commit02d123be77d2388afcf1ff2914d35309e60741b9 (patch)
tree2b2290a3b55f9522e1ad35d272b1955bab2a9dea
parent45374e25360500f31dd23b0ffcb341aeb26906f2 (diff)
Evas GL: Fix up some more desktop GL extensions
OpenGL 1.2 already supports some of the features that GLESv2 has as extensions: - GL_EXT_read_format_bgra - GL_EXT_texture_format_BGRA8888 - GL_EXT_texture_type_2_10_10_10_REV Also, we need to check the proper ARB name of some extensions when running on desktop, instead of their OES/IMG/EXT equivalent: - GL_ARB_texture_float - GL_ARB_texture_half_float - GL_ARB_texture_non_power_of_two - GL_ARB_half_float_vertex - GL_EXT_packed_depth_stencil
-rw-r--r--src/modules/evas/engines/gl_common/evas_gl_api_ext.c3
-rw-r--r--src/modules/evas/engines/gl_common/evas_gl_api_ext_def.h18
2 files changed, 10 insertions, 11 deletions
diff --git a/src/modules/evas/engines/gl_common/evas_gl_api_ext.c b/src/modules/evas/engines/gl_common/evas_gl_api_ext.c
index ef3e87f..b696d74 100644
--- a/src/modules/evas/engines/gl_common/evas_gl_api_ext.c
+++ b/src/modules/evas/engines/gl_common/evas_gl_api_ext.c
@@ -266,7 +266,8 @@ evgl_api_ext_init(void *getproc, const char *glueexts)
266 /* Add some extension strings that are always working on desktop GL */ 266 /* Add some extension strings that are always working on desktop GL */
267 static const char *desktop_exts = 267 static const char *desktop_exts =
268 "GL_EXT_read_format_bgra " 268 "GL_EXT_read_format_bgra "
269 "GL_EXT_texture_format_BGRA8888"; 269 "GL_EXT_texture_format_BGRA8888 "
270 "GL_EXT_texture_type_2_10_10_10_REV ";
270 strcpy(_gl_ext_string, desktop_exts); 271 strcpy(_gl_ext_string, desktop_exts);
271 strcpy(_gl_ext_string_official, desktop_exts); 272 strcpy(_gl_ext_string_official, desktop_exts);
272#endif 273#endif
diff --git a/src/modules/evas/engines/gl_common/evas_gl_api_ext_def.h b/src/modules/evas/engines/gl_common/evas_gl_api_ext_def.h
index 83d4188..7c71ad2 100644
--- a/src/modules/evas/engines/gl_common/evas_gl_api_ext_def.h
+++ b/src/modules/evas/engines/gl_common/evas_gl_api_ext_def.h
@@ -342,6 +342,7 @@ _EVASGL_EXT_END()
342 342
343_EVASGL_EXT_BEGIN(packed_depth_stencil) 343_EVASGL_EXT_BEGIN(packed_depth_stencil)
344 _EVASGL_EXT_DRVNAME(GL_OES_packed_depth_stencil) 344 _EVASGL_EXT_DRVNAME(GL_OES_packed_depth_stencil)
345 _EVASGL_EXT_DRVNAME_DESKTOP("GL_EXT_packed_depth_stencil")
345_EVASGL_EXT_END() 346_EVASGL_EXT_END()
346 347
347_EVASGL_EXT_BEGIN(rgb8_rgba8) 348_EVASGL_EXT_BEGIN(rgb8_rgba8)
@@ -362,18 +363,22 @@ _EVASGL_EXT_END()
362 363
363_EVASGL_EXT_BEGIN(texture_float) 364_EVASGL_EXT_BEGIN(texture_float)
364 _EVASGL_EXT_DRVNAME(GL_OES_texture_float) 365 _EVASGL_EXT_DRVNAME(GL_OES_texture_float)
366 _EVASGL_EXT_DRVNAME_DESKTOP("GL_ARB_texture_float")
365_EVASGL_EXT_END() 367_EVASGL_EXT_END()
366 368
367_EVASGL_EXT_BEGIN(texture_half_float) 369_EVASGL_EXT_BEGIN(texture_half_float)
368 _EVASGL_EXT_DRVNAME(GL_OES_texture_half_float) 370 _EVASGL_EXT_DRVNAME(GL_OES_texture_half_float)
371 _EVASGL_EXT_DRVNAME_DESKTOP("GL_ARB_texture_half_float")
369_EVASGL_EXT_END() 372_EVASGL_EXT_END()
370 373
371_EVASGL_EXT_BEGIN(texture_float_linear) 374_EVASGL_EXT_BEGIN(texture_float_linear)
372 _EVASGL_EXT_DRVNAME(GL_OES_texture_float_linear) 375 _EVASGL_EXT_DRVNAME(GL_OES_texture_float_linear)
376// _EVASGL_EXT_DRVNAME_DESKTOP("GL_ARB_texture_float_linear")
373_EVASGL_EXT_END() 377_EVASGL_EXT_END()
374 378
375_EVASGL_EXT_BEGIN(texture_half_float_linear) 379_EVASGL_EXT_BEGIN(texture_half_float_linear)
376 _EVASGL_EXT_DRVNAME(GL_OES_texture_half_float_linear) 380 _EVASGL_EXT_DRVNAME(GL_OES_texture_half_float_linear)
381// _EVASGL_EXT_DRVNAME_DESKTOP("GL_ARB_texture_half_float_linear")
377_EVASGL_EXT_END() 382_EVASGL_EXT_END()
378 383
379_EVASGL_EXT_BEGIN(texture_npot) 384_EVASGL_EXT_BEGIN(texture_npot)
@@ -381,12 +386,9 @@ _EVASGL_EXT_BEGIN(texture_npot)
381 _EVASGL_EXT_DRVNAME_DESKTOP("GL_ARB_texture_non_power_of_two") 386 _EVASGL_EXT_DRVNAME_DESKTOP("GL_ARB_texture_non_power_of_two")
382_EVASGL_EXT_END() 387_EVASGL_EXT_END()
383 388
384_EVASGL_EXT_BEGIN(vertex_half_float) // Desktop differs 389_EVASGL_EXT_BEGIN(vertex_half_float)
385 _EVASGL_EXT_DRVNAME(GL_OES_vertex_half_float)
386_EVASGL_EXT_END()
387
388_EVASGL_EXT_BEGIN(vertex_half_float_DESKTOP) // Desktop differs
389 _EVASGL_EXT_DRVNAME(GL_OES_vertex_half_float) 390 _EVASGL_EXT_DRVNAME(GL_OES_vertex_half_float)
391 _EVASGL_EXT_DRVNAME_DESKTOP("GL_ARB_half_float_vertex")
390_EVASGL_EXT_END() 392_EVASGL_EXT_END()
391 393
392_EVASGL_EXT_BEGIN(vertex_type_10_10_10_2) 394_EVASGL_EXT_BEGIN(vertex_type_10_10_10_2)
@@ -421,11 +423,7 @@ _EVASGL_EXT_BEGIN(texture_format_BGRA8888) // Desktop has it from GL 1.2
421 _EVASGL_EXT_DRVNAME(GL_EXT_texture_format_BGRA8888) 423 _EVASGL_EXT_DRVNAME(GL_EXT_texture_format_BGRA8888)
422_EVASGL_EXT_END() 424_EVASGL_EXT_END()
423 425
424_EVASGL_EXT_BEGIN(texture_type_2_10_10_10_rev) // Desktop differs 426_EVASGL_EXT_BEGIN(texture_type_2_10_10_10_rev) // Desktop has it from GL 1.2
425 _EVASGL_EXT_DRVNAME(GL_EXT_texture_type_2_10_10_10_REV)
426_EVASGL_EXT_END()
427
428_EVASGL_EXT_BEGIN(texture_type_2_10_10_10_rev_DESKTOP) // Desktop differs
429 _EVASGL_EXT_DRVNAME(GL_EXT_texture_type_2_10_10_10_REV) 427 _EVASGL_EXT_DRVNAME(GL_EXT_texture_type_2_10_10_10_REV)
430_EVASGL_EXT_END() 428_EVASGL_EXT_END()
431 429