public static AppEngine New(GameObject gameObjectToAttach, IAppEntry entry, IList<IModuleInitable> modules)
{
Debuger.Assert(gameObjectToAttach != null && modules != null);
AppEngine appEngine = gameObjectToAttach.AddComponent<AppEngine>();
appEngine._isNewByStatic = true;
appEngine.GameModules = modules;
appEngine.AppEntry = entry;
return appEngine;
}