LLGL Aims To Be Abstraction Layer For OpenGL, Direct3D 11/12 & Vulkan
One of my "hobbies" when news is light and there isn't any fun/new/exciting hardware keeping me busy on a given weekend is checking out the various Vulkan projects on GitHub. It's been great seeing all of the independent graphics renderers/engines being tried by different individuals, tons of different Vulkan samples, and a lot of other innovative projects around Vulkan, many of which I've written about in the past few months on Phoronix. One of the projects I see being regularly updated when checking on weekends and haven't written about yet is LLGL, the Low-Level Graphics Library.
LLGL is aiming to be a thin abstraction layer for modern graphics APIs. OpenGL and Direct3D 11 are largely supported so far (85% supported, according to the developer) while Direct3D 12 support was just started and Vulkan support is next on the TODO list. Basically, a common abstraction layer that in turn can target all major desktop graphics APIs (except for Apple's Metal, if you want to consider it an important API). LLGL works on Windows and Linux while macOS support is still in the early stages. The Low-Level Graphics Library is open-source under a three-clause BSD license.
If you are in need of supporting OpenGL/Direct3D/Vulkan and are potentially interested in an in-progress abstraction layer for seamlessly targeting the different APIs, check out LLGL's project site where there are also many code samples and examples for using their lightweight API, including tutorials on drawing a basic triangle, tessellation, texturing, query objects, render targets, multiple contexts, arrays, compute, stream outputs, and instancing.
It will be interesting to see where LLGL ends up in the months ahead and whether it manages to gain much adoption and the potential overhead of using this abstraction layer.
LLGL is aiming to be a thin abstraction layer for modern graphics APIs. OpenGL and Direct3D 11 are largely supported so far (85% supported, according to the developer) while Direct3D 12 support was just started and Vulkan support is next on the TODO list. Basically, a common abstraction layer that in turn can target all major desktop graphics APIs (except for Apple's Metal, if you want to consider it an important API). LLGL works on Windows and Linux while macOS support is still in the early stages. The Low-Level Graphics Library is open-source under a three-clause BSD license.
If you are in need of supporting OpenGL/Direct3D/Vulkan and are potentially interested in an in-progress abstraction layer for seamlessly targeting the different APIs, check out LLGL's project site where there are also many code samples and examples for using their lightweight API, including tutorials on drawing a basic triangle, tessellation, texturing, query objects, render targets, multiple contexts, arrays, compute, stream outputs, and instancing.
It will be interesting to see where LLGL ends up in the months ahead and whether it manages to gain much adoption and the potential overhead of using this abstraction layer.
24 Comments