MCPcopy Create free account
hub / github.com/axmolengine/axmol / init

Method init

core/base/Director.cpp:113–169  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

111Director::Director() {}
112
113bool Director::init()
114{
115 setDefaultValues();
116
117 _scenesStack.reserve(15);
118
119 // FPS
120 _lastUpdate = std::chrono::steady_clock::now();
121
122 auto concurrency = Configuration::getInstance()->getValue("axmol.concurrency", Value{-1}).asInt();
123 _jobSystem = new JobSystem(concurrency);
124
125#ifdef AX_ENABLE_CONSOLE
126 _console = new Console();
127#endif
128 // scheduler
129 _scheduler = new Scheduler();
130 // action manager
131 _actionManager = new ActionManager();
132 _scheduler->scheduleUpdate(_actionManager, Scheduler::PRIORITY_SYSTEM, false);
133
134 _eventDispatcher = new EventDispatcher();
135
136 _beforeSetNextScene = new EventCustom(EVENT_BEFORE_SET_NEXT_SCENE);
137 _beforeSetNextScene->setUserData(this);
138 _afterSetNextScene = new EventCustom(EVENT_AFTER_SET_NEXT_SCENE);
139 _afterSetNextScene->setUserData(this);
140 _eventAfterDraw = new EventCustom(EVENT_AFTER_DRAW);
141 _eventAfterDraw->setUserData(this);
142 _eventBeforeDraw = new EventCustom(EVENT_BEFORE_DRAW);
143 _eventBeforeDraw->setUserData(this);
144 _eventAfterVisit = new EventCustom(EVENT_AFTER_VISIT);
145 _eventAfterVisit->setUserData(this);
146 _eventBeforeUpdate = new EventCustom(EVENT_BEFORE_UPDATE);
147 _eventBeforeUpdate->setUserData(this);
148 _eventAfterUpdate = new EventCustom(EVENT_AFTER_UPDATE);
149 _eventAfterUpdate->setUserData(this);
150 _eventProjectionChanged = new EventCustom(EVENT_PROJECTION_CHANGED);
151 _eventProjectionChanged->setUserData(this);
152 _eventResetDirector = new EventCustom(EVENT_RESET);
153 // init TextureCache
154 initTextureCache();
155 initMatrixStack();
156
157 _renderer = new Renderer;
158
159#if AX_ENABLE_CACHE_TEXTURE_DATA
160 // listen the event that renderer was recreated on Android/WP8
161 _rendererRecreatedListener = EventListenerCustom::create(EVENT_RENDERER_RECREATED, [this](EventCustom*) {
162 _isStatusLabelUpdated = true; // Force recreation of textures
163 });
164
165 _eventDispatcher->addEventListenerWithFixedPriority(_rendererRecreatedListener, -1);
166#endif
167
168 return true;
169}
170

Callers 4

make_taskMethod · 0.45
getInstanceMethod · 0.45
setRenderViewMethod · 0.45

Calls 8

getInstanceFunction · 0.85
createFunction · 0.85
asIntMethod · 0.80
scheduleUpdateMethod · 0.80
reserveMethod · 0.45
getValueMethod · 0.45
setUserDataMethod · 0.45

Tested by

no test coverage detected