SkillAgentSearch skills...

DiligentEngine

A modern cross-platform low-level graphics library and rendering framework

Install / Use

/learn @DiligentGraphics/DiligentEngine

README

Diligent Engine <img src="https://github.com/DiligentGraphics/DiligentCore/blob/master/media/diligentgraphics-logo.png" height=64 align="right" valign="middle">

A Modern Cross-Platform Low-Level 3D Graphics Library and Rendering Framework Tweet

Diligent Engine is a lightweight, high-performance graphics API abstraction layer and rendering framework for cross-platform development. It leverages the power of modern graphics APIs such as Direct3D12, Vulkan, Metal, and WebGPU, while also maintaining robust support for legacy platforms through Direct3D11, OpenGL, OpenGLES, and WebGL. Providing a consistent front-end API, Diligent Engine uses HLSL as its universal shading language and also supports platform-specific shader formats (GLSL, MSL, DirectX bytecode, SPIR-V) for optimized performance. Ideal for game engines, interactive simulations, and 3D visualization applications, Diligent Engine is open-source and distributed under the permissive Apache 2.0 license.

Documentation License Chat on Discord Appveyor Build Status

Supported Platforms and Low-Level Graphics APIs

| Platform | D3D11 | D3D12 | OpenGL/GLES | Vulkan | Metal | WebGPU | Build Status | | -------------------------------------------------------------------------------------------------------------------------------------------- | ------------------ |------------------- | ------------------ | ------------------------------- | ------------------------------- | ------------------------------- | -------------------------------- | | <img src="https://github.com/DiligentGraphics/DiligentCore/blob/master/media/windows-logo.png" width=24 valign="middle"> Windows | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | - | :heavy_check_mark: <sup>3</sup> | Build Status | | <img src="https://github.com/DiligentGraphics/DiligentCore/blob/master/media/uwindows-logo.png" width=24 valign="middle"> Universal Windows | :heavy_check_mark: | :heavy_check_mark: | - | - | - | - | Build Status | | <img src="https://github.com/DiligentGraphics/DiligentCore/blob/master/media/linux-logo.png" width=24 valign="middle"> Linux | - | - | :heavy_check_mark: | :heavy_check_mark: | - | :heavy_check_mark: <sup>3</sup> | Build Status | | <img src="https://github.com/DiligentGraphics/DiligentCore/blob/master/media/android-logo.png" width=24 valign="middle"> Android | - | - | :heavy_check_mark: | :heavy_check_mark: | - | - | Build Status | | <img src="https://github.com/DiligentGraphics/DiligentCore/blob/master/media/macos-logo.png" width=24 valign="middle"> MacOS | - | - | :heavy_check_mark: | :heavy_check_mark: <sup>1</sup> | :heavy_check_mark: <sup>2</sup> | :heavy_check_mark: <sup>3</sup> | Build Status | | <img src="https://github.com/DiligentGraphics/DiligentCore/blob/master/media/apple-logo.png" width=24 valign="middle"> iOS | - | - | :heavy_check_mark: | :heavy_check_mark: <sup>1</sup> | :heavy_check_mark: <sup>2</sup> | - | Build Status | | <img src="https://github.com/DiligentGraphics/DiligentCore/blob/master/media/tvos-logo.png" width=24 valign="middle"> tvOS | - | - | - | :heavy_check_mark: <sup>1</sup> | :heavy_check_mark: <sup>2</sup> | - | Build Status | | <img src="https://github.com/DiligentGraphics/DiligentCore/blob/master/media/emscripten-logo.png" width=24 valign="middle"> Web | - | - | :heavy_check_mark: | - | - | :heavy_check_mark: | Build Status |

<sup>1</sup> Vulkan API is not natively supported on MacOS, iOS and tvOS platforms and requires a Vulkan portability implementation such as MoltenVK or gfx-portability.

<sup>2</sup> Available under commercial license - please contact us for details.

<sup>3</sup> Requires a native implementation of WebGPU, Dawn is recommended.

Features

  • Cross-platform
    • Exact same client code for all supported platforms and rendering backends
      • No #if defined(_WIN32) ... #elif defined(LINUX) ... #elif defined(ANDROID) ...
      • No #if defined(D3D11) ... #elif defined(D3D12) ... #elif defined(OPENGL) ...
    • Exact same HLSL shaders (VS, PS, GS, HS, DS, CS) run on all platforms and all back-ends
  • High performance
  • Modular design
    • Components are clearly separated logically and physically and can be used as needed
    • Only take what you need for your project
  • Clear and concise API
    • C/C++/C#
    • Object-based
    • Stateless
  • Key graphics features:
    • Automatic shader resource binding designed to leverage next-generation graphics APIs
    • Multithreaded command buffer generation
    • Multithreaded resource creation
    • Automatic or explicit control over resource state transitions
    • Descriptor and memory management
    • Shader resource reflection
    • Async compute and multiple command queues
    • Ray-tracing, mesh shaders, tile shaders, bindless resources, variable rate shading, sparse resources, wave operations, and other state-of-the-art capabilities
  • JSON-based render state description language and state packaging tool
  • Extensive validation and error reporting
  • Modern c++ features to make the code fast and reliable
  • Consistent high quality is ensured by continuous integration
    • Automated builds and unit testing
    • Source code formatting validation
    • Static analysis

Minimum supported low-level API versions:

  • OpenGL 4.1
  • OpenGLES 3.0
  • WebGL 2.0
  • Direct3D11.1
  • Direct3D12 with SDK version 10.0.19041.0
  • Vulkan 1.0
  • Metal 1.0

Documentation

High-level Rendering components

Related Skills

View on GitHub
GitHub Stars4.2k
CategoryDevelopment
Updated2h ago
Forks372

Languages

Batchfile

Security Score

100/100

Audited on Mar 20, 2026

No findings