...In-depth GL knowledge isn't necessary to start; use the OBJ loader to import models from Blender and elsewhere, attach textures, and start rendering!
Threads run different activities, e.g. initialization, framerate, timer, game cycle. Apartment model with message passing.
The drawing cycle is inverted from typical game loops. Framerate has a dedicated timer, and SurfaceView is in on-demand rendering mode.
Game Objects (GOs) opt-in to services by implementing the "marker" interface for each one it wants.
GOs enter the system via Install Pipeline, an asynchronous "standard" implementation that keys on the marker interfaces and performs the "protocol" for that marker. ...