Sin más dilación, aquí os dejo el vídeo de esta lección.
(Muy recomendado verlo a pantalla completa en HD)
¿Deseas saber más?
El sistema de coordenadas de Unity
Unity utiliza un sistema de coordenadas de "mano izquerda". Se conoce así por la regla mnemotécnica usada para recordar "hacia dónde apunta Z". Si colocamos el dedo pulgar de la mano izquierda horizontalmente mirando hacia la derecha (X positiva), y el índice verticalmente, como haciendo una "L", apuntando hacia arriba (Y positiva), al colocar el dedo corazón perpendicular a ambos, esa será la dirección de la Z positiva. Creo que un pequeño dibujo lo hará más comprensible:
Para no liaros mucho, recordad esta regla:
XYZ = RGB (rojo, verde, azul) = (pulgar, índice, corazón)Por cierto, en el vídeo hemos mencionado el concepto de sistema de coordenadas local y sistema de coordenadas global. Vamos a entrar un poco más en detalle en eso: Imaginad que partís en un viaje en coche. Pongamos que el punto de partida es el origen de coordenadas de la escena. En el sistema de coordenadas global (en el idioma que utiliza Unity se conoce como world space), vuestra posición y orientación es en relación a ese origen, la escena. Según vayáis avanzando en el trayecto, más os iréis alejando. En el sistema de coordenadas local (local space), vuestra posición no cambiaría, porque esa posición se refiere al coche (sois "locales al coche"). La analogía en el vídeo sería como si "la esfera está montada en el cubo, que es el coche". Hay otros muchos sistemas de coordenadas que iremos viendo más adelante con el tiempo (espacio de cámara, de textura...), cada uno con sus peculiaridades :)
¿Assets?
Los assets (o activos en castellano) son los recursos que va a utilizar el proyecto. Aquí es donde van los modelos, las texturas, fuentes, sonidos, niveles... Se almacenan dentro de la subcarpeta Assets en el directorio del proyecto.
Unity tiene una forma bastante inteligente de utilizar los assets, de tal manera que cuando se va a empaquetar el juego, determina cuáles de estos assets son utilizados y cuáles no, de manera que se descartará el resto para aligerar el paquete final (véase la carpeta Intermediate Assets de la que hablamos debajo). Aunque existe una excepción a esa regla, Resources, que veremos ahora.
Los nombres de las carpetas
Cuando ponemos a punto el proyecto al final del vídeo, creamos tres carpetas. Cada una tiene un propósito bien diferente:
- Intermediate Assets: Esta carpeta es una costumbre mía, pero no tiene ninguna interpretación especial en Unity. La utilizo para almacenar assets que no irán en el juego pero que necesito poder utilizar en Unity para generar los assets definitivos que sí irán en él. Por ejemplo, sprites individuales que desde una herramienta en Unity voy a "empaquetar" en una única hoja de sprites.
- Resources: Es una carpeta de assets especial para Unity. Los contenidos de esta carpeta se van a incluir íntegramente en el paquete final, independientemente de que sean utilizados o no. Se usa para assets que van a ser gestionados manualmente. Más adelante iremos viendo casos de assets que deben ir aquí.
- Scripts: Es donde almaceno toda la parte de programación del proyecto. Personalmente no me gusta mezclarlos con el resto de assets porque su naturaleza es radicalmente diferente a la de los demás. En la siguiente lección la iremos rellenando ;)
Hay una cuarta carpeta que no he mencionado en el vídeo al no ser parte de los assets del proyecto, pero que me gusta mantener dentro del proyecto: Original Assets. Esta carpeta va al mismo nivel que Assets dentro del proyecto, y es donde almaceno los originales (las imágenes en alta resolución del programa de dibujo, por ejemplo). Son datos en bruto de los assets, ni más ni menos.
El control de versiones por "meta-ficheros"
Esto va bastante adelantado al momento en el que hablaremos de el control de versiones, aunque es lo primero que se debería hacer nada más crear el proyecto.
En pocas palabras, un sistema de control de versiones va a permitirnos mantener un repositorio donde quedan almacenados los cambios que vamos haciendo al proyecto, de manera que podamos volver a una versión anterior, repartir el trabajo entre varias personas para luego reintegrarlo, y mucho más.
Para que esta información pueda ser persistente entre equipos diferentes, Unity (en su versión gratuita) ofrece la posibilidad de generar un "meta-fichero" para cada asset, donde almacena datos internos de Unity hacia ese asset (por ejemplo, el identificador interno, en el caso de una textura su tamaño máximo, etc.). Lo único que hay que tener en cuenta es:
- Al registrar cada asset en el sistema de control de versiones, hay que registrar ese asset y su correspondiente meta-fichero.
- Si se van a hacer operaciones con el asset fuera del editor (renombrarlo o moverlo desde el explorador de archivos, por ejemplo), su meta-fichero debe ir emparejado, y con el mismo nombre.
Descargas
Por ahora no es que haya mucho, pero aquí está la estructura que debería tener el proyecto en este punto:
Descargar ARPG.rar
(para descargar desde GDrive, ir a "Archivo -> Guardar como...")
(para descargar desde GDrive, ir a "Archivo -> Guardar como...")
