Prototipo de juegos móviles en Unity 2018 (Parte 1)

Cuando nos plateamos desarrollar juegos como profesionales y estamos empezando yo recomiendo hacer un prototipo todas aquellas funcionalidades que utilizaremos repetidamente. Cunado tu grupo es reducido o unitario no debemos perder tiempo en aquellas cosas que tenemos hechas en proyectos anteriores y podríamos reutilizar.


La mayor parte de los juegos móviles se componen en un inicio de una pantalla de splash con el logotipo de la compañía donde seguidamente veremos una pantalla de título de juego para mientras muestra un "cargando" se carga la primera escena del juego, ya sea un pantalla de configuración o el menú principal del juego.


Este hecho nos hace pensar que si en vez de empezar un nuevo proyecto a partir de un proyecto en blanco empezamos a partir de un prototipo que ya contenga estos elementos, configuración para móviles nos ahorraremos un tiempo valioso cada vez que los utilicemos. En este vídeo os muestro a modo de tutorial como hacer un prototipo de aplicación con las tres pantallas básicas. 


Este primer prototipo solo tiene una rutina en C# que controla la gestión del fadeIN i el fadeOUT del salto entre escenas. Os dejo el código para que no tengáis que copiarlo si os interesa.

 using System.Collections;  
 using System.Collections.Generic;  
 using UnityEngine;  
 using UnityEngine.SceneManagement;  
 using UnityEngine.UI;  
 public class FadeScene : MonoBehaviour {  
   public string sceneName;  
   public float waitSeconds;  
   public Image black;  
   public Animator anim;  
    // Use this for initialization  
   void Start ()  
   {  
     if (sceneName!="")  
     {  
       StartCoroutine("ExitToNewScene");  
     } else  
     {  
       StartCoroutine("EnterToNewScene");  
     }  
   }  
   IEnumerator ExitToNewScene()  
   {  
     yield return new WaitForSeconds(waitSeconds);  
     anim.SetTrigger("FadeIN");  
     yield return new WaitUntil(() => black.color.a == 1);  
     SceneManager.LoadScene(sceneName);  
   }  
   IEnumerator EnterToNewScene()  
   {  
     yield return new WaitForSeconds(waitSeconds);  
     anim.SetTrigger("FadeOUT");  
     yield return new WaitUntil(() => black.color.a == 0);  
   }  
 }  

No hay comentarios:

Publicar un comentario

Juegos, un mundo global en varios idiomas

En el juego que estamos desarrollando es primordial llegar al máximo público posible. Al ser un juego de estrategia es necesario explicar a...