MethaneKit
🎲 Modern 3D graphics made simple with C++20 cross-platform framework and rendering abstraction API on top of DirectX 12, Vulkan & Metal
Install / Use
/learn @MethanePowered/MethaneKitREADME
Methane Kit <img src="https://github.com/MethanePowered/MethaneKit/blob/master/Docs/Images/Logo/MethaneLogoNameSmall.png" width=200 align="right" valign="middle">
Easy to use modern 3D graphics rendering abstraction API and cross-platform application framework:
- Builds on top of modern native 3D graphics APIs: DirectX 12 on Windows, Vulkan on Linux, Metal on macOS, iOS & tvOS.
- Simplifies modern graphics programming with an object-oriented medium-level graphics API inspired by the simplicity of Apple Metal. Common shaders code in HLSL 6 is used on all platforms.
- Provides a cross-platform application framework with a CMake build toolchain, platform-independent application foundation classes, and a native-GUI layer for Windows, Linux, and macOS.
Download release builds with pre-built samples, tutorials, and tests to try them out. Check the latest build status, tests, code coverage, and analysis results or get build artifacts from GitHub Actions CI and Sonar Cloud. See the Build Instructions topic for manual build instructions and start learning the Methane Graphics RHI API with Hello Triangle and other tutorials' documentation.
| Platform | Graphics API | Master Build | Develop Build |
|-------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| <img src="https://github.com/MethanePowered/MethaneKit/blob/master/Docs/Images/Platforms/Windows.png" width=24 valign="middle"> Windows x64 | <img src="https://github.com/MethanePowered/MethaneKit/blob/master/Docs/Images/GraphicsApi/DirectX12Small.png" width=24 valign="middle"> DirectX 12 | |
|
| <img src="https://github.com/MethanePowered/MethaneKit/blob/master/Docs/Images/Platforms/Windows.png" width=24 valign="middle"> Windows x86 | <img src="https://github.com/MethanePowered/MethaneKit/blob/master/Docs/Images/GraphicsApi/DirectX12Small.png" width=24 valign="middle"> DirectX 12 |
|
|
| <img src="https://github.com/MethanePowered/MethaneKit/blob/master/Docs/Images/Platforms/Windows.png" width=24 valign="middle"> Windows x64 | <img src="https://github.com/MethanePowered/MethaneKit/blob/master/Docs/Images/GraphicsApi/VulkanSmall.png" width=24 valign="middle"> Vulkan |
|
|
| <img src="https://github.com/MethanePowered/MethaneKit/blob/master/Docs/Images/Platforms/Windows.png" width=24 valign="middle"> Windows x86 | <img src="https://github.com/MethanePowered/MethaneKit/blob/master/Docs/Images/GraphicsApi/VulkanSmall.png" width=24 valign="middle"> Vulkan |
|
|
| <img src="https://github.com/MethanePowered/MethaneKit/blob/master/Docs/Images/Platforms/Linux.png" width=24 valign="middle"> Linux | <img src="https://github.com/MethanePowered/MethaneKit/blob/master/Docs/Images/GraphicsApi/VulkanSmall.png" width=24 valign="middle"> Vulkan |
|
|
| <img src="https://github.com/MethanePowered/MethaneKit/blob/master/Docs/Images/Platforms/MacOS.png" width=24 valign="middle"> MacOS | <img src="https://github.com/MethanePowered/MethaneKit/blob/master/Docs/Images/GraphicsApi/VulkanSmall.png" width=24 valign="middle"> Vulkan |
|
|
| <img src="https://github.com/MethanePowered/MethaneKit/blob/master/Docs/Images/Platforms/MacOS.pn
