Cleanup of main update calbacks

Clarify update and draw of rendering manager by using callbacks (instead of hidden calls in draw method).
This commit is contained in:
Bruno Herbelin
2021-12-19 01:12:25 +01:00
parent 3a9c6f56bf
commit 8deb364025
2 changed files with 17 additions and 14 deletions

View File

@@ -40,11 +40,22 @@ extern "C"{
#endif
void prepare()
{
Mixer::manager().update();
UserInterface::manager().NewFrame();
}
void drawScene()
{
Mixer::manager().draw();
}
void renderGUI()
{
UserInterface::manager().Render();
}
int main(int argc, char *argv[])
{
// one extra argument is given
@@ -127,8 +138,10 @@ int main(int argc, char *argv[])
gst_debug_set_active(FALSE);
#endif
// draw the scene
Rendering::manager().pushFrontDrawCallback(drawScene);
// callbacks to draw
Rendering::manager().pushBackDrawCallback(prepare);
Rendering::manager().pushBackDrawCallback(drawScene);
Rendering::manager().pushBackDrawCallback(renderGUI);
// show all windows
Rendering::manager().show();
@@ -137,11 +150,7 @@ int main(int argc, char *argv[])
/// Main LOOP
///
while ( Rendering::manager().isActive() )
{
Mixer::manager().update();
Rendering::manager().draw();
}
///
/// UI TERMINATE