renderable_types.push_back(EGL_OPENGL_ES2_BIT);
Removing this will fail this function on devices that can't support ES3 and then it will fail context creation [here](https://source.chromium.org/chromium/chromium/src/+/main:ui/gl/gl_context_egl.cc;drc=0177114415e98506c6628baeee472cd2f0be6c34;l=100).
Essentially this code goes to EGL subsystem and asks what what configs it supports matching what we need, kinda very wonky API.
And we ask for any config that has at least 8 bits in each channel (unless we want 565) AND renderable type is ES3 / ES2 (AND surface type is whatever we need). If we filter configs that require ES3, ES2 driver will find none.
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
renderable_types.push_back(EGL_OPENGL_ES2_BIT);
Removing this will fail this function on devices that can't support ES3 and then it will fail context creation [here](https://source.chromium.org/chromium/chromium/src/+/main:ui/gl/gl_context_egl.cc;drc=0177114415e98506c6628baeee472cd2f0be6c34;l=100).
Essentially this code goes to EGL subsystem and asks what what configs it supports matching what we need, kinda very wonky API.
And we ask for any config that has at least 8 bits in each channel (unless we want 565) AND renderable type is ES3 / ES2 (AND surface type is whatever we need). If we filter configs that require ES3, ES2 driver will find none.
Ah, thanks! I had misinterpreted [this](https://chromium-review.googlesource.com/c/chromium/src/+/6994174/5/ui/gl/gl_surface_egl.cc): I thought that we needed to request ES2 here *only because* we didn't always request ES3.
So we'll be able to remove this line and [this code](https://source.chromium.org/chromium/chromium/src/+/main:ui/gl/gl_context_egl.cc;l=112-119;drc=0177114415e98506c6628baeee472cd2f0be6c34;bpv=1) only when we no longer actually support ES2 (if we want we could scope it down platform by platform as we remove ES2 support on that platform)?
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
renderable_types.push_back(EGL_OPENGL_ES2_BIT);
Colin BlundellRemoving this will fail this function on devices that can't support ES3 and then it will fail context creation [here](https://source.chromium.org/chromium/chromium/src/+/main:ui/gl/gl_context_egl.cc;drc=0177114415e98506c6628baeee472cd2f0be6c34;l=100).
Essentially this code goes to EGL subsystem and asks what what configs it supports matching what we need, kinda very wonky API.
And we ask for any config that has at least 8 bits in each channel (unless we want 565) AND renderable type is ES3 / ES2 (AND surface type is whatever we need). If we filter configs that require ES3, ES2 driver will find none.
Ah, thanks! I had misinterpreted [this](https://chromium-review.googlesource.com/c/chromium/src/+/6994174/5/ui/gl/gl_surface_egl.cc): I thought that we needed to request ES2 here *only because* we didn't always request ES3.
So we'll be able to remove this line and [this code](https://source.chromium.org/chromium/chromium/src/+/main:ui/gl/gl_context_egl.cc;l=112-119;drc=0177114415e98506c6628baeee472cd2f0be6c34;bpv=1) only when we no longer actually support ES2 (if we want we could scope it down platform by platform as we remove ES2 support on that platform)?
Right! In theory it's probably possible to remove code checking for ES3 renderable and rely on fallback below in that function, but it probably isn't worth it.
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
renderable_types.push_back(EGL_OPENGL_ES2_BIT);
Colin BlundellRemoving this will fail this function on devices that can't support ES3 and then it will fail context creation [here](https://source.chromium.org/chromium/chromium/src/+/main:ui/gl/gl_context_egl.cc;drc=0177114415e98506c6628baeee472cd2f0be6c34;l=100).
Essentially this code goes to EGL subsystem and asks what what configs it supports matching what we need, kinda very wonky API.
And we ask for any config that has at least 8 bits in each channel (unless we want 565) AND renderable type is ES3 / ES2 (AND surface type is whatever we need). If we filter configs that require ES3, ES2 driver will find none.
Vasiliy TelezhnikovAh, thanks! I had misinterpreted [this](https://chromium-review.googlesource.com/c/chromium/src/+/6994174/5/ui/gl/gl_surface_egl.cc): I thought that we needed to request ES2 here *only because* we didn't always request ES3.
So we'll be able to remove this line and [this code](https://source.chromium.org/chromium/chromium/src/+/main:ui/gl/gl_context_egl.cc;l=112-119;drc=0177114415e98506c6628baeee472cd2f0be6c34;bpv=1) only when we no longer actually support ES2 (if we want we could scope it down platform by platform as we remove ES2 support on that platform)?
Right! In theory it's probably possible to remove code checking for ES3 renderable and rely on fallback below in that function, but it probably isn't worth it.
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |