WebGL 1 requires ES2 (not ES3) for some extensions
Categories
(Core :: Graphics: CanvasWebGL, enhancement, P1)
Tracking
()
Tracking | Status | |
---|---|---|
firefox67 | --- | fixed |
People
(Reporter: jgilbert, Assigned: jgilbert)
References
Details
(Whiteboard: gfx-noted)
Attachments
(1 file)
We ask for ES2 on Android, but drivers often give us ES3, which is unfortunately legal.
We might be able to manually select an EGLConfig that supports ES2 but not ES3, and get ES2 that way.
Assignee | ||
Updated•6 years ago
|
Assignee | ||
Comment 1•6 years ago
|
||
Specifically, this is required because ANGLE can't translate ESSL1+extensions shaders into ESSL3. Otherwise we'd prefer ES3 everywhere.
Assignee | ||
Comment 3•6 years ago
|
||
It doesn't seem possible to request ES2 instead of ES3 on Android:
https://jdashg.github.io/misc/misc.html#gles2-on-android
I don’t see a way to get ES2 if the device offers ES3. The only thing I can think of is to manually search for EGLConfigs where either RENDERABLE_TYPE or CONFORMANT is missing the EGL_OPENGL_ES3_BIT bit. However, I dumped the configs in Fennec, and they’re all the same for those[.]
EGL_RENDERABLE_TYPE: 0x45 (EGL_OPENGL_ES_BIT | EGL_OPENGL_ES2_BIT | EGL_OPENGL_ES3_BIT)
EGL_CONFORMANT: 0x45 (EGL_OPENGL_ES_BIT | EGL_OPENGL_ES2_BIT | EGL_OPENGL_ES3_BIT)
Assignee | ||
Updated•6 years ago
|
Assignee | ||
Updated•6 years ago
|
Assignee | ||
Comment 4•6 years ago
|
||
We need to mark affected extensions as disabled on ES3.
Assignee | ||
Comment 5•6 years ago
|
||
MozReview-Commit-ID: DoyN2kNlL01
Comment 7•6 years ago
|
||
bugherder |
Description
•