30 open-source projects similar to micro-gl/micro-gl, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Micro Gl alternative.
Magnum is a C++ middleware suite for cross-platform graphics development and real-time data visualization. It provides a hardware-agnostic rendering layer that translates graphics commands into platform-specific calls, ensuring consistent behavior across different GPU drivers and APIs such as Vulkan. The project focuses on decoupling application logic from underlying hardware through abstract graphics and system utilities. It features a plugin-based resource importer for 3D assets and audio, a hierarchical scene graph for spatial transformations, and a high-performance signal-based event syst
DiligentEngine is a cross-platform graphics abstraction layer and physically-based rendering engine. It provides a unified interface for executing 3D graphics commands across multiple low-level rendering backends from a single codebase, including a dedicated system for importing 3D assets via the GLTF 2.0 format. The engine features an HLSL shader cross-compiler that allows a single set of shaders to run across different graphics APIs and operating systems. It supports advanced rendering capabilities such as ray-tracing, mesh shaders, variable rate shading, and bindless resources. The framew
Horde3D is a small 3D rendering and animation engine. It is written in an effort to create an engine being as lightweight and conceptually clean as possible.
DirectXTK is a C++ library designed to simplify 2D and 3D graphics, audio, and input programming for DirectX applications. It serves as a comprehensive toolkit providing high-level wrappers for DirectX graphics, audio management, and input handling. The toolkit includes a graphics wrapper for loading textures and rendering 3D models and 2D sprites, alongside a dedicated audio manager for sound effects and 3D spatial audio. It also provides an input handler to track and process state updates from keyboards, mice, and gamepads. The library covers a broad capability surface including 3D math an
This project is a collection of portable, header-only C functions designed for integration into software projects without complex build dependencies or external linking requirements. It provides a suite of low-level utilities for graphics, audio, and data management, focusing on direct memory manipulation and zero-dependency portability. By utilizing a single-header distribution model, the library simplifies dependency management while allowing developers to maintain full control over memory allocation and binary size through compile-time configuration. The library distinguishes itself by off
bgfx is a cross-platform, graphics rendering abstraction layer designed for high-performance applications. It provides a unified interface that maps high-level rendering commands to native graphics APIs, allowing developers to maintain a single codebase that executes consistently across diverse operating systems and hardware architectures. The library distinguishes itself through a multi-threaded command submission model that decouples rendering logic from the main application thread, effectively minimizing CPU bottlenecks. It utilizes a backend-agnostic command buffer and a deferred resource
Skia is a high-performance 2D graphics rendering library used for drawing text, geometries, and images on digital surfaces. It functions as a hardware-accelerated graphics engine that offloads drawing operations to the GPU, a vector graphics processor for SVG and complex paths, and a typography engine for shaping and drawing characters with Unicode support. The project provides a cross-platform image codec for encoding and decoding standard image formats into raw pixel data across multiple operating systems. It also enables the development of user interfaces that maintain visual consistency a
libigl is a C++ geometry processing library used for analyzing and manipulating 3D triangle and tetrahedral meshes. It functions as a numerical linear algebra suite and a mesh manipulation framework, integrating a geometric deformation engine to implement rigid and polyharmonic transformations. The project is distinguished by its header-only library design and its implementation of specialized deformation techniques, including rigid-as-possible and polyharmonic shape deformation. It also provides a visualization tool for rendering surfaces and scalar fields with interactive scene controls and
NanoVG is a hardware-accelerated 2D drawing engine and C graphics primitive library. It provides a lightweight renderer designed for high-quality antialiased vector graphics using an OpenGL backend. The engine specializes in the construction and rendering of complex geometric paths. It supports the definition of precise shapes using lines, beziers, and arcs, with integrated winding rules to create hollow areas and composite shapes. The library covers a broad range of vector graphics capabilities, including path composition and the rendering of antialiased shapes. These tools enable the devel
An extensible, cross-platform, single-header C/C++ OpenGL loader library.
2D Vector Graphics Engine Powered by a JIT Compiler
This project is a cross-platform library designed for desktop application development, providing a unified interface for window management, input handling, and hardware-accelerated graphics. It serves as a foundational framework that abstracts platform-specific windowing protocols and graphics APIs, enabling developers to create interactive software that functions consistently across Windows, macOS, and Linux. The library distinguishes itself by providing deep integration with low-level graphics APIs, specifically OpenGL and Vulkan. It manages the complexities of graphics context initializati
A free, header-only C++ swarming (flocking) library for real-time applications
Assimp is a cross-platform 3D asset pipeline and import library that loads numerous industry-standard 3D file formats into a single unified internal data structure. It functions as a framework for converting 3D models between different file formats across multiple operating systems and architectures. The project provides a 3D mesh processing tool for normalizing and optimizing geometry through triangulation, vertex removal, and normal generation. It also includes a 3D asset export utility to write internal scene data back into various external file formats. The system covers broad capability
GLFW C++ Wrapper - thin, modern, C++17, header-only GLFW wrapper
A basic 3D scene implemented with various engines, frameworks or APIs.
Low Level Graphics Library (LLGL) is a thin abstraction layer for the modern graphics APIs OpenGL, Direct3D, Vulkan, and Metal
Oasis Engine is a web-based game engine and component-based game framework designed for creating real-time interactive 2D and 3D applications for web and mobile platforms. It functions as a real-time 3D renderer and a physics simulation engine capable of producing interactive visual environments. The framework includes a visual scene editor that allows artists and developers to build, layout, and export project scenes through a graphical interface. This system supports visual scene composition and converts these layouts into structured data for runtime reconstruction. The engine's capabiliti
This project is an open-source 3D game engine designed for building high-fidelity games, simulations, and cinematic environments. It functions as a robotics simulation platform with native integration for ROS 2 to model robot controllers and sensors. The engine features a multi-threaded Forward+ physically based renderer that supports hardware-accelerated ray tracing and global illumination. The system is built on a modular extension architecture using Gems to add or replace features without modifying core binaries. It includes a native SDK for AWS cloud integration, enabling IAM authenticati
FoldCraftLauncher is a Java game launcher for Android that provides a mobile runtime environment for executing various game versions and snapshots. It functions as an Android game environment that manages game instances, save files, and graphical renderer plugins. The project includes a Java runtime manager to bundle or import multiple Java versions, ensuring compatibility across different software releases. It features a virtual input mapper that simulates mouse and keyboard events by translating touch screen interactions and gyroscope data into desktop-style control signals. The system pro
Simple single header modular library for font rendering and atlas management.\ The library is designed to be lightweight, RFont.h itself does not directly handle rendering calls, it passes raw data to the user defined renderer.
Fabric.js is an object-oriented canvas library that provides an interactive framework for managing shapes, images, and text within an HTML5 canvas environment. It abstracts raw pixel-based drawing commands into a structured hierarchy of objects, enabling developers to manipulate, transform, and animate elements through a centralized event-driven system. The library distinguishes itself by offering comprehensive state serialization, allowing complex graphic compositions to be converted into JSON or SVG formats for persistent storage and reconstruction. It includes a built-in SVG parser that co
shapes is a package for Ebitengine (the 2D game library written by Hajime Hoshi) that allows rendering some common shapes and effects in complementary ways to the official vector package. Some examples:
Sokol is a C hardware abstraction layer and cross-platform graphics library designed for managing windowing, input, and audio across different operating systems. It functions as a GPU resource manager and multimedia application framework, providing a unified API for rendering 2D and 3D graphics across WebGL, Metal, Direct3D, and OpenGL. The project is distinguished by its single-header implementation, which simplifies integration and portability. It utilizes a stateless render pass definition and a one-update-per-frame model to synchronize CPU data to GPU memory and manage resource lifecycles
TIGR is a tiny cross-platform graphics library, providing a unified API for Windows, macOS, Linux, iOS and Android.