WebGL Backends
| WebGL Backend
|
Platforms
|
Compositing Accelerators
|
Notes
|
| Native GL3+
|
[1] WGL (windows), CGL (mac), GLX (linux)
|
GLTexture sharing
|
Investigating GL/DX-Texture interop
|
| Native GLES2+
|
EGL (android)
|
OMTC?
|
|
| ANGLE GLES2
|
EGL (windows)
|
EGLSurface sharing
|
ANGLE is actually DX+D3D9
|
Available Layer Managers
| Layer Manager
|
Platforms
|
Compatible Compositing Accelerations
|
Notes
|
| D3D10
|
Windows Vista/7
|
EGLSurface interop
|
Investigating GL/DX-Texture interop
|
| D3D9
|
Windows XP/Vista/7
|
ReadPixels
|
Investigating GL/DX-Texture interop
|
| OGL
|
Mac, Linux
|
GLTexture sharing
|
|
| Basic
|
All
|
ReadPixels
|
|
Expected Platform/Layers/WebGL Combinations
| Platform
|
Backend 1 (Compositing Accel)
|
Backend 2 (Compositing Accel)
|
Notes
|
| Windows Vista/7
|
D3D10, ANGLE EGL+GLES2 (EGLSurface sharing)
|
[1] D3D10, WGL, Native GL (None)
|
|
| Windows XP
|
D3D9, ANGLE EGL+GLES2 (None)
|
[1] D3D9, WGL, Native GL (None)
|
|
| Mac
|
OGL, CGL, Native GL (GLTexture sharing)
|
Basic, CGL, Native GL (None)
|
|
| Linux
|
[2] OGL, GLX, Native GL (GLTexture sharing)
|
Basic, GLX, Native GL (None)
|
|
| Android
|
Basic, EGL, Native GLES (None)
|
|
|
[1] WGL+GL backend is not used as fallbacks if ANGLE fails to initialize. That is, if we try to load ANGLE and fail, we will no longer fall back to WGL+GL. (For the time being)
[2] OGL Layers is blocked on (almost?) all linux platforms.