private void initializeEngine(Context context) { mViewport = new Viewport(); mEntityStore = new EntityStore(); mMessageQueue = new MessageQueue(); mGamePersister = new GamePersister(); mFrameRateLogger = new FrameRateLogger(); mRenderer = new Renderer(mViewport, mFrameRateLogger); mGameLoop = new GameLoop(mRenderer, mFrameRateLogger, mMessageQueue, mEntityStore); mThemeManager = new ThemeManager(context, mRenderer); mSoundManager = new SoundManager(context); mSpriteFactory = new SpriteFactory(context, mThemeManager); mSoundFactory = new SoundFactory(context, mSoundManager); mGameEngine = new GameEngine(mSpriteFactory, mThemeManager, mSoundFactory, mEntityStore, mMessageQueue, mRenderer, mGameLoop); mEntityRegistry = new EntityRegistry(mGameEngine); }