RESOLVED FIXED 117705
Shader compiler not properly configured for GLES on cairo based ports
https://bugs.webkit.org/show_bug.cgi?id=117705
Summary Shader compiler not properly configured for GLES on cairo based ports
Mario Sanchez Prada
Reported 2013-06-17 09:44:12 PDT
At the moment, the ANGLE shader compiler used in GraphicsContext3D for cairo based ports is always speaking GLSL, no matter WebKit is configured to use a GLES2 or an GL backend. This is causing some problems such as that the "precision mediump float;" bit in the fragment shader template used by TextureMapper(see TextureMapperShaderProgram.cpp) gets ignored when compiled by ANGLE, causing problems with some graphics drivers because that will mean that float precision for fragment shaders won't be explicitly specified, which seems to be a requirement for GLES2 (even if some implementations are more relaxed about it). The solution seems to be as simple as properly configuring the ANGLE compiler when creating the graphics context, to use SH_ESSL_OUTPUT instead of SH_GLSL_OUTPUT when GLES2 is used.
Attachments
Patch proposal (2.35 KB, patch)
2013-06-17 09:48 PDT, Mario Sanchez Prada
mrobinson: review+
Mario Sanchez Prada
Comment 1 2013-06-17 09:48:05 PDT
Created attachment 204829 [details] Patch proposal Here comes the patch. It addresses the issue in a similar fashion to the Qt and EFL ports, and also clearly fixes an obscure issue for us as well, so I hope it'll be the right one. Now kindly asking for review...
Mario Sanchez Prada
Comment 2 2013-06-18 01:35:43 PDT
Cidorvan Leite
Comment 3 2013-10-30 10:51:00 PDT
*** Bug 117804 has been marked as a duplicate of this bug. ***
Note You need to log in before you can comment on or make changes to this bug.