Transition between two scenes
In my game when you die I use "Application.LoadLevel("GameOver");" which opens up the gameover screen and plays the death audio but on slow mobiles you can see the transition between the two scenes I.e the game screen freezes for a spit second. What do you recommend I do to hide or prevent this from happening? Thanks.
Answer by say_forever · Nov 25, 2015 at 03:21 AM
you could use Application.LoadLevelAsync to preload next scene, and remember setting async.allowSceneActivation = false below Application.LoadLevelAsync;
Finally, when player is dead, set async.allowSceneActivation = true; to open next scene.
Do i have to assign a variable? if so which one because it says the name async does not exist in current context.
Yes, enter File -> Build Setting, and then press "add current". so that, you can see the integer number to represent each scene.
What's wrong with this script? When I die it doesn't load the game over screen?
void OnCollisionEnter2D(Collision2D collision2D)
{
AsyncOperation async = Application.LoadLevelAsync("GameOver");
async.allowSceneActivation = false;
if (collision2D.transform.name == "LimeWall")
{
GetComponent<SpriteRenderer>().enabled = false;
GetComponent<BoxCollider2D>().enabled = false;
Destroy(gameObject, audioClip[0].length);
ScoreSystem scoreSystem = GameObject.Find("Level$$anonymous$$anager").GetComponent<ScoreSystem>();
scoreSystem.IncreaseScore();
PlaySound(0);
}
if (collision2D.transform.name == "RedWall")
{
async.allowSceneActivation = true;
}
Your answer

Follow this Question
Related Questions
how to disable dontdestroyonload on a specific scene 2 Answers
Mega Man Style Camera Movement 0 Answers
Waiting for fading to end before switching scenes 0 Answers
Animator consecutive set parameter problem 0 Answers
Animation Transition Unity 0 Answers