• C#
  • JS

Script language

Select your preferred scripting language. All code snippets will be displayed in this language.


Suggest a change


Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.


Sumbission failed

For some reason your suggested change could not be submitted. Please try again in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.



Switch to Manual
public static function LoadLevel(index: int): void;
public static void LoadLevel(int index);
public static function LoadLevel(name: string): void;
public static void LoadLevel(string name);


index The level to load.
name The name of the level to load.


Loads the level by its name or index.

Before you can load a level you have to add it to the list of levels used in the game. Use File->Build Settings... in Unity and add the levels you need to the level list there. MonoBehaviour.OnLevelWasLoaded is called on all active game objects after the level has been loaded.

	// Load the level named "HighScore".

Application.LoadLevel ("HighScore");
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { void Example() { Application.LoadLevel("HighScore"); } }

When loading a new level all game objects that have been loaded before are destroyed. If you want to let an object survive when loading a new level, use Object.DontDestroyOnLoad. Calling LoadLevel will update Application.loadedLevel and Application.loadedLevelName.

Note: Actual level change happens in the beginning of the next frame at the Inititialization stage prior to the first FixedUpdate call (see Execution Order of Event Functions):
- All game objects are being destroyed starting from root objects. OnDisable (if enabled) and OnDestroy callbacks are called for scripts.
- New objects are being initialized. Awake, OnEnable, Start callbacks are called for scripts.

See Also: Application.LoadLevelAsync, Application.LoadLevelAdditive, Application.LoadLevelAdditiveAsync.