awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com

graphics rendering abstraction layer

Ranking updated Jun 30, 2026

For a cross-platform graphics abstraction library, the first results are diligentgraphics/diligentengine, google/filament and bkaradzic/bgfx. gfx-rs/gfx and floooh/sokol round out the shortlist. Compare the match explanations and check the project documentation against your requirements.

We curate open-source GitHub repositories matching “graphics rendering abstractions”. Results are ranked by relevance to your query — pick filters below to narrow, or refine with AI.

Results for “a cross-platform graphics abstraction library”

Find the best repos with AI.We'll search the best matching repositories with AI.
  • diligentgraphics/diligentengineDiligentGraphics avatar

    DiligentGraphics/DiligentEngine

    4,193View on GitHub↗

    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

    DiligentEngine is a cross-platform graphics abstraction layer and rendering engine that directly unifies Vulkan, DirectX 12, Metal, and OpenGL under a single API, with built-in HLSL cross-compilation, GPU resource management, multi-threaded command recording, PBR support, and GLTF 2.0 asset loading, making it a comprehensive match for your search.

    BatchfileAbstraction-Layer Rendering BackendsDeferred Command EncodersCross-Platform Graphics Tooling
    View on GitHub↗4,193
  • google/filamentgoogle avatar

    google/filament

    19,658View on GitHub↗

    Filament is a real-time physically based rendering engine designed for high-fidelity 3D graphics. It functions as a cross-platform graphics library that provides a unified interface for rendering complex models and materials across desktop, mobile, and web environments. The engine distinguishes itself through a data-oriented architecture that optimizes memory usage and processing speed, alongside a shader-variant system that generates specialized code for specific material and lighting configurations. By abstracting diverse hardware graphics backends, it ensures consistent visual performance

    Filament is a cross-platform graphics library that abstracts Vulkan, Metal, and OpenGL backends with a high-level API for real-time PBR rendering, matching your need for a rendering abstraction layer, though it does not include a built-in immediate mode GUI integration among its features.

    C++Abstraction-Layer Rendering BackendsPhysically Based Rendering MaterialsCross-Platform Graphics Tooling
    View on GitHub↗19,658
  • bkaradzic/bgfxbkaradzic avatar

    bkaradzic/bgfx

    17,161View on GitHub↗

    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

    bgfx is exactly the cross-platform graphics abstraction layer you're looking for — it unifies Vulkan, DirectX 12, Metal, and other backends under a single API with multi-threaded command submission, shader compilation, and resource management, covering the core need for a higher-level abstraction.

    CAbstraction-Layer Rendering BackendsCross-Platform Graphics Tooling
    View on GitHub↗17,161
  • gfx-rs/gfxgfx-rs avatar

    gfx-rs/gfx

    5,398View on GitHub↗

    gfx is a hardware-agnostic graphics API abstraction that translates a unified set of graphics and compute commands into native instructions for multiple GPU drivers. It provides a common interface for cross-platform rendering and general-purpose GPU compute programming. The project features an intermediate-representation shader translation system that converts source code and SPIR-V into target-specific languages. It employs a data-driven reference test framework to verify that graphics output remains consistent across different hardware platforms. Capabilities include parallel command buffe

    gfx is a hardware-agnostic graphics API abstraction that translates unified rendering commands across Vulkan, DirectX 12, Metal, and OpenGL, offering shader compilation, GPU resource management, and parallel command recording—exactly the cross-platform abstraction layer you want, though it omits higher-level features like a frame graph or built-in PBR.

    RustDeferred Command EncodersMultithreaded Command Encoding
    View on GitHub↗5,398
  • floooh/sokolfloooh avatar

    floooh/sokol

    9,620View on GitHub↗

    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

    Sokol is a C cross-platform hardware abstraction layer and graphics library that simplifies GPU rendering across WebGL, Metal, Direct3D, and OpenGL while managing resources and windowing, which directly matches this search for a higher-level abstraction over low-level graphics APIs.

    CTexture Management SystemsCross-Platform Graphics Tooling
    View on GitHub↗9,620
  • gfx-rs/wgpugfx-rs avatar

    gfx-rs/wgpu

    17,382View on GitHub↗

    This project is a cross-platform graphics and compute framework that provides a unified, hardware-agnostic abstraction layer for rendering and parallel processing. It enables developers to build high-performance applications that execute consistently across diverse operating systems and hardware backends, including Vulkan, Metal, and DirectX. By mapping high-level graphics commands to native APIs, it serves as a portable foundation for both real-time 3D rendering and general-purpose GPU computing. The framework distinguishes itself through a robust architecture that supports both native deskt

    wgpu is a cross-platform GPU abstraction that unifies Vulkan, Metal, and DirectX, providing the portable rendering foundation you need; while it handles shader compilation, resource management, and command recording, it leaves higher-level features like frame graphs and asset loading to user code or additional libraries.

    RustTexture Management SystemsGraphics Backends
    View on GitHub↗17,382
  • emilk/eguiemilk avatar

    emilk/egui

    29,409View on GitHub↗

    This library is an immediate mode graphical user interface toolkit that reconstructs the entire interface every frame. By executing procedural code within a high-frequency loop that matches the display refresh rate, it allows developers to define interactive elements and state updates directly. The framework utilizes a multi-pass rendering approach to resolve layout dependencies, ensuring that widget sizes and positions are calculated accurately before final placement to prevent visual jitter. The project functions as a cross-platform graphics toolkit, providing a portable rendering layer tha

    egui is an immediate mode GUI toolkit, not a general-purpose graphics abstraction layer; while it provides cross-platform rendering backends to draw its interface, it focuses on UI widgets and input handling rather than the shader compilation, GPU resource management, and render-graph features this search targets.

    RustImmediate Mode GUI FrameworksImmediate Mode GUI Toolkits
    View on GitHub↗29,409
  • saschawillems/vulkanSaschaWillems avatar

    SaschaWillems/Vulkan

    11,998View on GitHub↗

    This project serves as a comprehensive educational framework and reference library for mastering high-performance graphics programming and parallel compute resource management. It provides a collection of practical implementations designed to demonstrate the explicit control required by the Vulkan API, covering the fundamental mechanics of modern graphics pipelines and cross-platform hardware interaction. The repository distinguishes itself by focusing on the low-level architectural requirements of modern GPU development, including manual memory allocation, multi-threaded command recording, a

    This repository is a collection of Vulkan-specific educational examples and reference implementations that focus on explicit low-level control of the Vulkan API, rather than providing a higher-level cross-platform abstraction over multiple GPU backends as requested.

    GLSLPhysically Based Rendering MaterialsCross-Platform Graphics ToolingDescriptor Set Managers
    View on GitHub↗11,998
  • raylockllc/dearpyguiRaylockLLC avatar

    RaylockLLC/DearPyGui

    15,478View on GitHub↗

    DearPyGui is a hardware-accelerated Python GUI framework and graphics rendering engine. It operates as an immediate mode user interface system, rendering frames from scratch to ensure high performance and minimal state management for desktop applications. The project functions as a GPU-accelerated plotting library capable of rendering millions of data points with high frame rates. It also serves as a node editor toolkit for constructing interactive graph-based interfaces to manage visual data flows. The framework includes capabilities for custom 2D graphics rendering, interface theme customi

    DearPyGui is a GPU-accelerated Python GUI framework, not a general-purpose cross-platform abstraction over Vulkan, DirectX 12, or Metal for low-level GPU rendering; it abstracts GPU rendering specifically for immediate mode user interfaces, which is a neighboring category to what you're looking for.

    C++Immediate Mode GUI ToolkitsTexture Management Systems
    View on GitHub↗15,478
  • embarkstudios/kajiyaEmbarkStudios avatar

    EmbarkStudios/kajiya

    5,334View on GitHub↗

    Kajiya is a physically based rendering engine and real-time global illumination renderer. It utilizes a GPU-accelerated path tracer to simulate real-world material properties, such as roughness and metalness, to achieve photorealistic visual results. The engine incorporates a temporal super-resolution upscaler to increase final render resolution by reconstructing images from lower-resolution internal frames. It also generates high-fidelity reference images through path-tracing to verify the visual accuracy of real-time lighting outputs. The system covers 3D scene visualization and asset mana

    Kajiya is a physically based rendering engine and real-time global illumination renderer, not a cross-platform abstraction layer over Vulkan/DirectX 12/Metal — it focuses on specific rendering techniques rather than providing a general-purpose GPU backend abstraction.

    RustPhysically Based Rendering Materials
    View on GitHub↗5,334
  • rxi/microuirxi avatar

    rxi/microui

    5,525View on GitHub↗

    microui is a minimal immediate-mode graphical user interface library written in C, designed for resource-constrained environments such as embedded systems. It operates without dynamic memory allocation and has no external dependencies beyond standard C, making it a self-contained solution for building lightweight interfaces. The library is delivered as a single header file, simplifying integration into any project. It uses a fixed-allocator heap for all runtime state, guaranteeing deterministic memory use and predictable performance. All drawing is delegated to user-supplied callbacks, keepin

    microui is a minimal immediate-mode GUI library for embedded systems, not a cross-platform GPU rendering abstraction layer — it handles UI widgets, not Vulkan/DirectX/Metal backends, shaders, or GPU resource management.

    CImmediate Mode GUI Toolkits
    View on GitHub↗5,525
  • doitsujin/dxvkdoitsujin avatar

    doitsujin/dxvk

    16,602View on GitHub↗

    DXVK is a graphics compatibility layer that enables Windows-based applications to run on non-Windows operating systems by translating legacy Direct3D instructions into the modern Vulkan API. It functions as a translation library that maps high-level rendering commands to low-level hardware-accelerated primitives, allowing for high-fidelity graphics output across different hardware environments. The project distinguishes itself through a suite of performance optimization strategies designed to maintain frame consistency and reduce latency. By utilizing background shader compilation and multith

    DXVK is a Direct3D-to-Vulkan translation layer for running Windows games on Linux, not a high-level cross-platform rendering abstraction library for developers to build GPU rendering pipelines from scratch.

    C++Deferred Command EncodersCross-Platform Graphics Tooling
    View on GitHub↗16,602
Compare the top 10 at a glance
RepositoryStarsLanguageLicenseLast push
diligentgraphics/diligentengine4.2KBatchfileapache-2.0Feb 22, 2026
google/filament19.7KC++apache-2.0Feb 20, 2026
bkaradzic/bgfx
17.2K
C
BSD-2-Clause
Jun 16, 2026
gfx-rs/gfx5.4KRustApache-2.0Feb 27, 2023
floooh/sokol9.6KCzlibFeb 21, 2026
gfx-rs/wgpu17.4KRustApache-2.0Jun 16, 2026
emilk/egui29.4KRustApache-2.0Jun 13, 2026
saschawillems/vulkan12KGLSLMITJun 12, 2026
raylockllc/dearpygui15.5KC++MITMay 13, 2026
embarkstudios/kajiya5.3KRustApache-2.0Jul 7, 2025

Related searches

  • 2D graphics engine
  • GPU accelerated renderer
  • Geometric primitive library
  • Programmatic image renderer
  • Image rendering engine
  • GPU acceleration libraries
  • Runtime abstraction layers
  • 3D rendering engine