Axmol is an MIT-licensed, cross-platform game engine for 2D and 3D games. Build with C++ or Lua for mobile, desktop, WebAssembly, and Xbox via UWP.
Try it online · Get started · Games made with Axmol · 简体中文
Run the Axmol WebAssembly tests or the FairyGUI demo in your browser. Explore games and other projects made with Axmol.
Major feature development for v3 beta1 is largely complete on dev. Current work focuses on final cleanup and release preparation.
- Integrated: C++23, Box2D v3 and Jolt physics, Vulkan/D3D11/D3D12 rendering backends alongside Metal and GL, and high-DPI improvements for Windows, Linux, and WebAssembly.
- Experimental: optional VR/OpenXR support.
The following rendering backends are enabled by default on dev. A build can include multiple backends.
| Platform | Default-enabled backends |
|---|---|
| Windows | D3D11, D3D12, GL, Vulkan |
| Linux | Vulkan, GL |
| Android | Vulkan, GL |
| WinUWP | D3D12, D3D11, GL |
| iOS / macOS | Metal |
GL refers to OpenGL or OpenGL ES depending on the platform. WebAssembly uses WebGL. See rendering build options for configuration and the v3 roadmap for progress. These v3 capabilities do not describe the stable v2 release.
| Branch | Use it for | C++ standard |
|---|---|---|
dev (default) |
v3 development and trying new features; APIs and experimental features may change | C++23 |
release/2.x |
Stable v2 LTS releases and production projects | C++20 |
v3 beta1 is in preparation, and dev remains the v3 pre-release branch. The latest stable release is from v2 LTS. Contribution and branch rules are in CONTRIBUTING.md.
Install a C++23 compiler and PowerShell 7, then follow the setup and building guide for platform-specific prerequisites. To try v3 from the default dev branch:
git clone https://github.com/axmolengine/axmol.git
cd axmol
./setup.ps1Restart your terminal after setup, return to the cloned Axmol directory, then create and build a C++ project:
axmol new -p dev.axmol.hellocpp -d ./projects -l cpp HelloCpp