Blog Details
Blog Details
Blog Details

ARTICLE

ARTICLE

GameDeveloper – Programmer –

Details

Details

Blog Details Image
Blog Details Image

Unity & Axmol

Jan 1, 2025

Unity vs. Axmol: My Experience Migrating a Game Engine

I have migrated few games like, Seven Dots, Merge X3, Stack 24 initially from Cocos2d-x to Unity. Then after 6 or 7 months, we migrated them back from Unity to Axmol engine. Actually, Stack 24 was initially built using Unity and then migrated back to Axmol. As a mobile game developer working across different platforms and engines, I've had the unique opportunity to dive deep into both Unity and Axmol (formerly Cocos2d-x). One of the most insightful parts of my journey was when I migrated one of our existing games from Unity to Axmol. It wasn't just a technical shift—it was a learning experience that deepened my understanding of both engines and the trade-offs between them.

The Reason for Migration

Unity had pretty good performance and better updates. But then the pricing changes from Unity came, which affected lots of companies, including ours. We didn't want to take any chances, so we decided to migrate back to the Axmol engine. The open-source nature and lightweight design of Axmol offered a lot of flexibility, especially for 2D games where engine overhead can be a bottleneck.

Understanding the Differences

Unity is known for its visual editor, ease of use, and powerful C# scripting. It speeds up development, especially for teams with tight deadlines. Axmol, on the other hand, is more low-level, offering fine-grained control over rendering, physics, and memory. It's written in C++, which brings performance benefits but also demands a stronger programming foundation.

Blog Image
Blog Image
Blog Image
The Migration Process

Rebuilding the game in Axmol wasn't a straightforward copy-paste job. I had to:

  • Reimplement all core gameplay mechanics using C++.

  • Convert Unity’s UI and animations into Axmol's format.

  • Handle asset management manually, unlike Unity’s automated pipeline.

  • Recreate physics behavior and transitions from Unity's engine.

One of the toughest challenges was adapting Unity’s component-based architecture into Axmol’s more traditional game loop structure. However, this gave me a better understanding of how things work under the hood, which I could never have appreciated as deeply in Unity alone.


What I Learned

This experience sharpened my problem-solving and debugging skills immensely. I got to explore lower-level game engine architecture, memory management, and graphics rendering—all while ensuring the same gameplay experience remained intact. I also became more comfortable switching between C++ and C#, understanding the strengths of each language.


Which One Do I Prefer?

It depends on the project. For rapid development and prototyping, Unity is hard to beat. It's also excellent for 3D and AR/VR applications. But for lightweight 2D games where you want complete control and minimal engine bloat, Axmol is incredibly powerful.

Migrating a game between two engines is never easy, but it’s an experience I would recommend to any developer looking to level up. It pushes you to think like an engine developer, not just a game designer—and that perspective has been invaluable in my career.