2011 — 2012
Mobile game · iOS to Android
Porting game logic to C++ and Cocos2d-x.
Game developer
The challenge
Port an existing iOS game to another platform.
What I built
- Studied the existing codebase.
- Ported game logic to C++/Cocos2d-x.
Results
- Ported game logic from Objective-C/Cocos2d to C++/Cocos2d-x.
Components & connections
Original game
- iOS gameExisting codebase and game behavior.
Porting
- Game logicPorting game systems to C++.
- Platform APIsMapping platform capabilities.
Target platform
- Android versionTarget version built with C++/Cocos2d-x.
- iOS game→Game logicport systems
- iOS game→Platform APIsmapping
- Game logic→Android versiongame behavior
- Platform APIs→Android versionadaptation
Engineering takeaway
Context
Commercial mobile game development.
- Preserving game behaviour across platforms.
Approach
Mapped platform APIs and progressively ported the game systems.
- Preserved game behaviour while changing the language and framework.
Lessons
- Porting teaches you to separate product logic from platform-specific behaviour.
Stack
- Objective-C reading
- C++
- Cocos2d
- Cocos2d-x