Unity Gestión de escenas
Revisión del 09:47 3 jun 2020 de Wiki (discusión | contribuciones) (→Cargando escenas dinámicamente)
Sumario
Introducción
- Como comenté al principio de esta Wiki una escena la podemos identificar como cada una de las pantallas que conforman nuestro juego.
- También puede identificarse con diferentes 'fases' que pueda tener nuestro juego, creando nuevos escenarios.
- Normalmente todo juego tendrá una pantalla Inicial donde aparecen las diferentes opciones de configuración del juego, acceso a High Scores, ayuda,...cada una de estas pantalla conformará una escena de nuestro juego.
Creando nuevas escenas
Cargando escenas dinámicamente
- Durante el juego iremos de una escena a otra en función de lo que haga el jugador.
- Lo primero que tenemos que hacer es 'cargar' las escenas que conforman nuestro juego.
- A pesar de que estén creadas a nivel de proyecto, las escenas no forman parte del juego hasta que no se lo indiquemos a Unity.
Cambiando de escena en los scripts
- Una vez tenemos las escenas cargadas podemos cambiar de una a otra haciendo uso del método ScreenManager.LoadScene de la clase ScreenManager.
- Como parámetro espera recibir el nombre de la escena a cargar o el número asociado a la escena como ya comenté anteriormente.
- En el caso de la pantalla principal podemos crear un script asociado a un Empty GameObject que en función de los eventos de los botones a nivel de la interface gráfica cargue una escena u otra.
1 public class Principal : MonoBehaviour {
2
3 public void CambiarPantalla(Button button)
4 {
5 if (button.name.Equals("Jugar"))
6 {
7 SceneManager.LoadScene("PantallaJuego");
8 }
9 else if (button.name.Equals("HighScores"))
10 {
11 .......
12
13 }
14 }
- Para salir del juego debemos llamar al método Application.Quit().
Enlace a la página principal del curso
-- Ángel D. Fernández González -- (2018).