ANGLE (software)

ANGLE (Almost Native Graphics Layer Engine) is an open source, BSD-licensed graphics engine abstraction layer developed by Google.[1] The API is mainly designed to bring high-performance OpenGL compatibility to Windows computers and to web browsers such as Chromium by translating OpenGL calls to Direct3D, which has much better driver support.[2][3][4] There are two backend renderers for ANGLE: the oldest one uses Direct3D 9.0c, while the newer one uses Direct3D 11.[5]

ANGLE
Developer(s)Google
Repository
Written inC++
PlatformCross-platform
TypeGraphics engine
LicenseBSD 3-Clause License
Websiteangleproject.org

ANGLE is currently used by Google Chrome, Firefox,[6] and the Qt Framework.[7] The engine is also used by Windows 10 for compatibility with apps ported from Android.[8]

History

The project started as a way for Google to bring full hardware acceleration for WebGL to Windows without relying on OpenGL graphics drivers. Google initially released the program under the BSD license.[9]

The current production version (2.1.x) implements OpenGL ES 2.0, 3.0 and (for some platforms) 3.1 and EGL 1.4, claiming to pass the conformance tests for both. Work was started on then future OpenGL ES 3.0 version,[5] for the newer Direct3D 11 backend.[10]

The capability to use ANGLE in a Windows Store app was added in 2014.[8] Microsoft contributed support for lower feature levels to the project. Supporting CoreWindow and SwapChainPanel in ANGLE's EGL allows applications to run on Windows 8.1, Windows Phone 8.1, and later.[11]

Level of OpenGL ES support via backing renderers

Direct3D 9 Direct3D 11 Desktop GL GL ES Vulkan Metal
OpenGL ES 2.0 complete complete complete complete complete in progress
OpenGL ES 3.0 complete complete complete complete
OpenGL ES 3.1 in progress complete complete in progress
OpenGL ES 3.2 in progress in progress in progress
Direct3D 9 Direct3D 11 Desktop GL GL ES Vulkan Metal
Windows complete complete complete complete complete
Linux complete complete
macOS complete in progress
iOS planned
Chrome OS complete planned
Android complete complete
Fuchsia in progress

Software utilizing ANGLE

ANGLE is currently used in a number of programs and software.

  • Chromium and Google Chrome.[6] Chrome uses ANGLE not only for WebGL, but also for its implementation of the 2D HTML5 canvas and for the graphics layer of the Google Native Client (which is OpenGL ES 2.0 compatible).[5]
  • Firefox uses ANGLE as the default WebGL backend on Windows.[6]
  • Qt 5 uses ANGLE as the default renderer for its OpenGL ES 2.0 API wrapper and other Qt elements which use it on Windows.[7]
  • Candy Crush Saga uses ANGLE as the default renderer in its Windows Store version of the application.[8]
  • Cocos2d uses ANGLE as its rendering engine for applications published to the Windows Store.[8]
  • ANGLE for Windows Store [12] provides Windows developers precompiled ANGLE binaries via a NuGet package.
  • Stellarium provides two versions for Windows: the default version uses OpenGL, the alternative version uses ANGLE as the renderer.[13]
  • Shovel Knight uses ANGLE as rendering engine, as seen in final credits.[14]
  • RuneScape NXT client uses ANGLE to provide a DirectX 9 compatibility mode for older graphics cards.[15]
  • Krita started using ANGLE as the rendering engine on Windows starting on version 3.3.0.[16]
  • Microsoft Edge has ANGLE as a rendering option in the "Standards Preview" page in Windows Insider build 17025.
  • GTAV included ANGLE in the installation, normally at Systemdrive.
gollark: I see.
gollark: What do you mean "increment infinitely"?
gollark: Er, what? ASCII 123 is `{`.
gollark: It's not that bad.
gollark: Do you have test cases?

References

  1. "Google Announces Angle – Almost Native Graphics Layer Engine – so OpenGL ES can run over DirectX 9 – khronos.org news". Khronos.org. 19 March 2010. Retrieved 5 August 2014.
  2. "Google's Angle brings OpenGL to Windows". I-programmer.info. 13 December 2011. Retrieved 5 August 2014.
  3. "Chromium gets GPU acceleration – The H Open: News and Features". H-online.com. 30 August 2010. Retrieved 5 August 2014.
  4. Bridge, Henry (18 March 2010). "Chromium Blog: Introducing the ANGLE Project". Blog.chromium.org. Retrieved 5 August 2014.
  5. "angleproject – ANGLE: Almost Native Graphics Layer Engine – Google Project Hosting". 25 March 2014. Retrieved 5 August 2014.
  6. "(WebGL) How to Enable Native OpenGL in your Browser (Windows)". Geeks3D. Retrieved 5 August 2014.
  7. "Graphics on Windows from a different angle | Qt Blog". Qt. Retrieved 5 August 2014.
  8. "ANGLE: Running OpenGL ES 2.0 Graphics Code on Windows". channel9.msdn.com. 30 April 2015.
  9. Shankland, Stephen (25 March 2014). "Google aims for easier 3D Web on Windows – CNET". News.cnet.com. Retrieved 5 August 2014.
  10. https://angleproject.googlecode.com/files/ANGLE%20and%20Cross-Platform%20WebGL%20Support.pdf Archived 11 August 2014 at the Wayback Machine.
  11. "ANGLE for Windows Store Wiki". Microsoft Corp.
  12. "ANGLE for Windows Store – NuGet Package". www.nuget.org. 29 May 2015.
  13. "FAQ #2570 : Questions : Stellarium". answers.launchpad.net.
  14. VideoGameCredits (27 June 2014). "Shovel Knight (Credits) (PC)" via YouTube.
  15. Jagex. "Dev Blog - NXT - Can I Run It? - News - RuneScape". services.runescape.com.
  16. Foundation, Krita. "Krita 3.3.0 - Krita". krita.org.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.