AGE is a multi-threaded game engine for Android. It can be used with OpenGL or Canvas-based graphics.
Threads are used strategically to partition different activities, e.g. initialization, that would otherwise clog up the drawing cycle.
Threads use the apartment model, and communicate by message passing.
Game components use an opt-in approach to request system services. A component opts-in by implementing the interface corresponding to the service.
The drawing cycle is inverted from typical game loops. In AGE there is a dedicated timer for framerate, and the SurfaceView is run in on-demand rendering mode.
By using on-demand rendering and apartment threading, synchronization of game state is simplified.
[Threads]
[Game Objects]
[Install Pipeline]