iOS: Disable worker contexts, and use sized formats
Kimmo Kinnunen made this change downstream in WebKit.
https://bugs.webkit.org/show_bug.cgi?id=215908
Disable ANGLE workers until EAGL implementation is more complete.
Current implementation fails to compile any shader, since the
compilation happens in the worker thread and worker EAGL context
which does not use the same sharegroup as the main context.
The shader objects are created in the main context but the shader
source setting and compilation happens in the worker context.
EAGL needs a flush between state changes, and adding that
correctly is a bigger change to be done later.
Use sized formats when calling [EAGLContext -texImageIOSurface]
from EGL_ANGLE_iosurface_client_buffer code. The texImageIOSurface
accepts parameters with glTexImage2D logic. On ES3, some of the
internal formats must be sized formats. The EAGLContext instantiated
by ANGLE is ES3, even if the ANGLE context would be ES2.
No tests added since this should be caught with the many video
related tests. It's unclear why this is not the case -- at
least on real hw. This is to be investigated later, too.
Bug: angleproject:5104
Change-Id: Iebf1a04488c5137d55a278d973a34511e8dc46bb
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2481850Reviewed-by:
Kenneth Russell <kbr@chromium.org>
Reviewed-by:
Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: James Darpinian <jdarpinian@chromium.org>
Showing
Please
register
or
sign in
to comment