diff --git a/src/lib.rs b/src/lib.rs index eb58a87..1241717 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -349,6 +349,14 @@ impl Default for WinitAppRunnerState { /// Overriding the app's [runner](bevy_app::App::runner) while using `WinitPlugin` will bypass the /// `EventLoop`. pub fn winit_runner(mut app: App) { + if app.plugins_state() == PluginsState::Ready { + // If we're already ready, we finish up now and advance one frame. + // This prevents black frames during the launch transition on iOS. + app.finish(); + app.cleanup(); + app.update(); + } + let mut event_loop = app .world .remove_non_send_resource::>()