Skip to content

About RHI in Axmol v3

halx99 edited this page Dec 31, 2025 · 42 revisions

About the upcoming Axmol v3

The v3 of Axmol Engine is still in active development, so if you need a stable release that works out of box then please use v2 versions. But if you want to play around with v3 and its new features, then this page will help you.

Roadmap: https://github.com/axmolengine/axmol/discussions/2650


RHI list

  • axmol/rhi/d3d12 (since Nov 27, 2025)
  • axmol/rhi/vulkan (since Nov, 2025)
  • axmol/rhi/d3d11 (since Aug, 2025)
  • axmol/rhi/opengl
  • axmol/rhi/metal

🎮 D3D11 / D3D12 / Vulkan in v3

  • Nov 22, 2025 — Work started on the D3D12 backend.
  • Nov 13, 2025 — Work started on the Vulkan RHI.
  • Aug 9, 2025 — Development of the D3D11 backend for Axmol began.
    As of now, 99% of cpp-tests pass under the new D3D11 RHI.

Performance Tests

Test ENV:

  • GPU: NVIDIA GeForce RTX 2060 SUPER
  • CPU: Intel(R) Core(TM) i9-10980XE CPU @ 3.00GHz
  • RAM: 64GB 3200Mhz
  • OS: Windows 11 25H2 Build 10.0.26200.7462
  • Disable extension: ImGui
  • Build Config: Releae

Test Results (Triangles & % Improvement vs Cocos2d-x-4.0)

UPDATED on: Dec 30, 2025

Triangle Rendering Count at 42 FPS

Version Backend Triangles Δ vs cocos2d-4.0 % vs cocos2d-4.0
axmol-3.0.0 D3D12 445,151 +156,575 +54.2%
axmol-3.0.0 Vulkan 444,144 +155,568 +53.9%
axmol-3.0.0 D3D11 447,887 +159,311 +55.2%
axmol-3.0.0 ANGLE 384,883 +96,307 +33.4%
axmol-2.11.0 ANGLE 385,453 +96,877 +33.6%
cocos2d-x-4.0 OpenGL 288,576 baseline baseline
cocos2d-x-3.10 OpenGL 288,702 baseline baseline

  • axmol-2.10.0 on GLES-3.0 (ANGLE D3D11)
image
  • axmol-3.0.0 on GLES-3.0 (ANGLE D3D11)
image
  • axmol-3.0.0 on D3D11
image
  • axmol-3.0.0 on Vulkan
image
  • axmol-3.0.0 on D3D12
image
  • cocos2d-x-4.0
image
  • cocos2d-x-3.10
image

FAQ for v3

Q. For WinUWP and Win32, how to switch the render API to D3D11/D3D12/Vulkan?

A. By default, WinUWP & Win32 will use GLES 300 rendered by Google ANGLE, but now in Axmol v3 you can specify a new CMake option -DAX_RENDER_API=d3d11 to force the switch of the render API from gl to d3d11. all valid RHI name for cmake option AX_RENDER_API are: gl, d3d11, d3d12, vk, mtl

  • valid RHI name for Win32: d3d12, d3d11, vk, gl
  • valid RHI name for WinUWP: d3d12, d3d11, gl
  • valid RHI name for Android: gl, vk
  • valid RHI name for Linux: gl, vk
  • valid RHI name for iOS/macOS/tvOS: mtl, gl

Clone this wiki locally