Doing WebGL Rendering on Windows with ANGLE
Google uses WebGL to natively render 3D graphics inside Chrome. The problem is that WebGL relies on OpenGL 2.0, and not all Windows systems have its drivers installed. The ANGLE (Almost Native Graphics Layer Engine) project is intended as a thin layer between WebGL and DirectX, enabling Chrome to do 3D on any Windows system.
Practically, WebGL brings native 3D to the browsers and all major browser vendors – Apple, Google, Mozilla, and Opera - are members of the WebGL Working Group, a member of the Khronos Group, a non-profit technology consortium including, among many others, as promoters: AMD, Apple, ARM, Intel, Motorola, Nokia, NVIDIA, Sun, Texas Instruments, and as contributors: Creative, Dell, EA, Google, IBM, Opera, Mozilla and many other companies involved in the graphics industry.
WebGL is a graphic feature introduced in Gecko 1.9.3 and due to be released with Firefox 3.7. Khronos specifies that WebGL is supported on Mac OS X 10.6 in the WebKit nightly builds. Also, it is included in all Chromium builds and Chrome Development channel. WebGL is not available in Opera at this time, according to Khronos but it is supposed to be supported soon.
One of the problems is that the current implementation of WebGL is running on top of OpenGL 2.0, and its drivers are not always installed on Windows machines or do not exist for some graphics cards. This would make 3D rendering via WebGL impossible on such systems. This is the problem Google wants to solve with ANGLE, creating a thin layer between WebGL and DirectX, enabling Chrome to render 3D on Windows and not depending on OpenGL drivers.
ANGLE will also help developers prototyping on Windows but targeting mobile and embedded systems because OpenGL ES is specifically designed for such systems. ANGLE has been open sourced under the New BSD License.
Mike Amundsen May 29, 2015
Ben Linders May 28, 2015