0
votes

I'm developping a 3D app with Unity. The app should start on a splash screen canvas, then should show the loaded scene.

Everything works well on Editor. But when I try on a real device (iphone7), the canvas displays very lately: Between Unity splash screen and my splash screen, I can see during 0.5 second the avatar as a T shape (not animated) and an empty backgound. And then my splash screen.

What I want:
Unity splashscreen > My Splashscreen > the scene fully loaded

What I see: Unity splashscreen > the scene not completely loaded > my splash screen > the scene fully loaded

How can I tell Unity to render the Canvas earlier?

EDIT
My canvas is just in front of the camera, my 3D objects too. I reproduced the problem on a new scene, very simplified (Image is a simple opaque background, no sprite is configured): The cube and blank bg still appear quickly before Canvas...

scene

1
you're loading the scene manually or your splashscreen canvas is just in front? of the camera on the same scene?Lotan
The second. See my edits.Martin
Is there some script that controls that? Is it possible the camera isn't found correctly in the beginning?derHugo
In this simple project, there is no script at all. I ended with creating a splashscreen scene, with an opaque background with the same color as the splash image. The problem remains (logo unity > plain color > Canvas image), but is less visible.Martin

1 Answers

1
votes

Move Canvas under all the rest, as the hierarchy goes from down to top!