What does HackerNews think of angle?

A conformant OpenGL ES implementation for Windows, Mac, Linux, iOS and Android.

Language: C++

BTW. For the last 15 years, all web browsers on Windows do WebGL on top of DirectX (using the Angle library https://github.com/google/angle).
You can still use OpenGL. Just not the vendor provided drivers. They are indeed horrible. There are libraries like:

* ANGLE ( https://github.com/google/angle ) - An OpenGL ES implementation with Direct3D 9, Direct3D 11, Desktop GL, GL ES, Vulkan and Metal backends. This is what we used to use for shipping our Qt 3D application, that used a bunch of OpenGL Shaders. We used to get bug reports about various shaders not working properly on various hardware. After switching to this, all those bug reports vanished.

* Zinc ( https://www.supergoodcode.com/do-not/ ) - A more recent, OpenGL implementation on top of Vulkan. I haven't used this one yet. But they are making a lot of progress and it is almost as performant as vendor provided OpenGL Drivers these days. So if I ever have to ship a desktop app, needing opengl, I'd strongly consider using this.

If they wanted to provide OpenGL ES support (all mobile devices) they could just use ANGLE which will provide OpenGL ES support on top of vulkan

https://github.com/google/angle

Not sure how true this is, since both Chrome and Firefox use ANGLE as their default WebGL backend (at least on Windows).

https://github.com/google/angle

ANGLE (Chrome’s OpenGL ES backend) has a Vulcan backend as well, although I haven’t seen any performance numbers. It’s made to run WebGL though so strong incentive to have good performance.

https://github.com/google/angle

You can still kind of have that experience by using ANGLE[1] as your OpenGL implementation. It lets you use the same dialect of OpenGL ES on Windows, Linux, Mac, and Android, with consistent behavior across platforms.

ANGLE is the base of the WebGL implementation in Chrome. For WebGPU, we (Google) are working on a new native library called Dawn[2] that will fill the same role that ANGLE does for WebGL. I'm personally hopeful that Dawn itself can eventually be useful as a cross platform graphics abstraction for native apps as well as web apps. There's also Mozilla's gfx-rs[3] in the same space.

[1] https://github.com/google/angle

[2] https://dawn.googlesource.com/dawn

[3] https://github.com/gfx-rs/gfx

MoltenGL proprietary and not the only implementation of the GL library on top of modern APIs. There's also ANGLE.

It worked pretty OK-ish in my project running OpenGL game on Windows Phone 8. I was using Microsoft's fork [2].

Another alternative is GLOVE [3], which is a software OpenGL on top of Vulkan.

Another interesting project is WebGPU [4] which targets to provide Vulkan-like APIs across various platforms in browsers.

As it's offshoot which is not quite related is GFX-rs, which became a cross-platform Rust library providing low level graphics API (HAL layer).

looking forward seeing ANGLE getting Metal backend, which been just a promise so far.

[1] https://github.com/google/angle

[2] https://github.com/Microsoft/angle

[3] https://think-silicon.com/products/software/glove/

[4] https://en.wikipedia.org/wiki/WebGPU

[5] https://github.com/gfx-rs/gfx

Also, keep in mind, that while WebGL is based on OpenGL ES, it is emulated using Microsoft Direct X on all Windows machines (by all mainstream browsers through the Angle project https://github.com/google/angle).
Besides Zink, there is GL ES support on top of Vulkan through GLOVE[1] as well as Google's own ANGLE[2].

[1]: https://github.com/Think-Silicon/GLOVE [2]: https://github.com/google/angle

Case in point. Google's ANGLE library has a in-progress Vulkan back-end. (Used for WebGL in Chrome and Firefox). ANGLE does only provide OpenGL ES, but then so does Android. I wouldn't be surprised if an upcoming android version required Vulkan suppport and Android shipped with ANGLE for OpenGL.

https://github.com/google/angle

Did you mean to write "not" though OpenGL? Most WebGL on Windows run through DirectX via OpenGL emulation using the ANGLE Project. Both Chrome and Firefox do this and I'm 99% sure Edge doesn't use OpenGL either so not sure why you thought browsers were using OpenGL on Windows.

https://github.com/google/angle