

Chrome uses ANGLE for all graphics rendering on Windows, including the accelerated Canvas2D implementation and the Native Client sandbox environment. OpenGL ES 3.1: ANGLE 2.1.0.f5dace0f1e57 (Jul, 2020)ĪNGLE also provides an implementation of the EGL 1.5 specification.ĪNGLE is used as the default WebGL backend for both Google Chrome and Mozilla Firefox on Windows platforms.Platform support via backing renderersĪNGLE v1.0.772 was certified compliant by passing the OpenGL ES 2.0.3 conformance tests in October 2011.ĪNGLE has received the following certifications with the Vulkan backend: This version of the specification is thus supported on all platforms specified above that support OpenGL ES 3.0 with known issues. Level of OpenGL ES support via backing renderersĪdditionally, OpenGL ES 1.1 is implemented in the front-end using OpenGL ES 3.0 features. Future plans include ES 3.2, translation to Metal and MacOS, Chrome OS, and Fuchsia support.

ANGLE currently provides translation from OpenGL ES 2.0, 3.0 and 3.1 to Vulkan, desktop OpenGL, OpenGL ES, Direct3D 9, and Direct3D 11. The goal of ANGLE is to allow users of multiple operating systems to seamlessly run WebGL and other OpenGL ES content by translating OpenGL ES API calls to one of the hardware-supported APIs available for that platform. For text that only changes slowly (so you aren’t continually reloading the texture) that can be blindingly efficient.ANGLE - Almost Native Graphics Layer Engine


On systems with decent shader support, I’ve been experimenting with a technique where I send the strings I need down to the GPU as a texture map with one texel per character (containing the ASCII code) and use fragment shader code to convert use that value as the coordinate for looking up the font texture - amazingly, it actually works pretty well. Another approach (if your text is relatively fixed) is to store entire words, phrases or even sentences as texture and draw the whole thing with one textured quad.Ī very long time ago, I wrote a FAQ about this (that was back in the era of OpenGL 1.2!) () If you have a lot of text - that might mean drawing a LOT of polygons. One simple way to do that is to make up a short/wide texture map with all of the ASCII characters in it - then write code to draw each letter as a textured quadrilateral using the appropriate texture coordinates to extract the right letter out of the texture map. You either do that outside of the API (maybe using some other operating-system commands) - or you write your own font rendering stuff. There is no API in OpenGL (or OpenGLES) for drawing text.
