-
-
Notifications
You must be signed in to change notification settings - Fork 295
Axmol v3
After several months of hard work from maintainers and contributors, Axmol v3 is here, the biggest change for the engine since the transition from Cocos2d-x to Axmol. Modernizing the engine to 2026 standards and expanding its cross-platform capabilities were the main objectives of this update.
Some of the biggest improvements are support for C++23, adding support for Direct3D 11, Direct3D 12 and Vulkan, and ARM support for Windows and Linux; but we also changed the shader language to HLSL, added VR support, updated the physics engines, and more. In this page, we'll list all the improvements and link to the corresponding wiki pages or PR entries for those who want to know more.
Please check the full list of improvements here.
We know a lot of users choose Axmol because it's a C++ game engine, and they are passionate about the language. With the transition from Cocos2d-x to Axmol, the C++ version was updated from 11 to 20, and now with the new Axmol v3, we give it a new bump, up to C++23.
Together with OpenGL and Metal, Axmol v3 adds three more RHIs (Render Hardware Interfaces) to the list: Direct3D 11, Direct3D 12 and Vulkan. This brings performance improvements of around 55% compared with OpenGL (used by Cocos2d-x v4.0), and 17% versus ANGLE, available in both Axmol v2 and Axmol v3. More info about the performance tests and how to switch between RHIs can be found on this wiki page.
As a true cross-platform game engine, having a Dynamic RHI that chooses the best RHI for each device was a very important goal of this update. More info in this PR - #3008.
With the efficiency of ARM chips compared with x86, ARM laptops and other small form factor devices are growing at a very fast pace. Supporting these new devices was one of the main objectives of this v3. We supported macOS ARM devices (M series) before, and now we add Windows and Linux to the list. Please check the following PRs for more details:
Windows ARM PR - #3074
Linux ARM PR - #3071
Now Axmol supports VR devices through OpenXR, including controllers. Please check this PR - #3220 for more info.
Again, in order to make Axmol truly cross-platform, we moved the shader language to HLSL. Now developers can maintain a single HLSL source file, and the compiler automatically translates it to the corresponding RHI. For those developers migrating their game to Axmol v3, we prepared a wiki page for their reference. For more info about the update, please check the PR - #3233.
The release of the latest Box2D 3.x was of great impact due to all the improvements it brought. Now we support it in Axmol v3, together with Jolt for 3D scenes. Please check the PRs for more info:
Box2D PR - #3095
Jolt PR - #3124
For this new version, we refactored the input system to Pointer Events. We prepared a complete migration guide for your reference in this wiki page. For reference, this is the PR - #3173.
Apple HVF (Hierarchical Variable Font) text rendering allows Axmol to ensure system font compatibility, rendering accuracy, and cross-platform UX consistency. Check the PR - #3118.
Axmol v3 adds Tracy profiling. Check the PR - #3239. (Thank you unfiv!).
In Axmol v2, the ImGUI extension was not supported on Android. Now it works on all platforms. Check PR - #3083 for more info.
In Axmol v3, Effekseer 1.80.x has native RHI integration, enabling cross-platform particle rendering with built-in Unlit/Lit/Distortion shaders across OpenGL, D3D11, D3D12, Vulkan, and Metal.
Check this PR - #3259 for extra details.
Now the Live2D Cubism Framework is updated to R5.5 with advanced blending, a new updater system, and a cross-platform launch API.
Please check the PR - #3197.
In Axmol v3, the Spine Runtime is updated to 4.3, and SkeletonAnimation has been refactored. Check PR - #3196 for more details.
We introduced a new CLA (Contributor License Agreement) in order to provide clearer and more robust legal protections for the long-term health of the project. More info here.
We also make regular financial transparency updates, like this one.
Axmol v3 is ready for production, but all big updates come with the possibility of new bugs or instabilities, so our current objective is to make this v3 as stable as possible with the next revisions.
And of course, in the long term, we'll keep updating the engine to support new technologies that are yet to come. Stability and support are the most important qualities of a game engine, since game developers are going to invest years developing their games and updating them, decades in a lot of cases.
If you want to support us, please spread the word about this update! Of course, we'll love to see articles or videos about the engine, but just telling your friends is enough.
Of course, financial contributions will be of great help for the long-term maintenance of the project. If you want to help us in that way, please check the donation page.
And if you want to collaborate with code, PRs are always welcome!
Finally, starring us on GitHub is always welcome. Thank you very much for reading, and we are looking forward to seeing your next projects made with Axmol Engine!
- Cocos2d-x Migration Guide
- SpriteKit to Axmol Engine
- Update Guide for Android
- Migration Guide for PR 3173: Refactor InputSystem