UNITY El entorno de desarrollo

De MediaWiki
Ir a la navegación Ir a la búsqueda

Introducción

  • En este punto vamos a explicar en que partes está dividida la interfaz del programa.
Unity3d interfaz 1.jpg


  • Y vamos a empezar a explicarlo con las tres ventanas centrales.
  • Hierarchy Window => Ventana jerárquica
  • Scene View => Vista de escena
  • Window Inspector => Ventana Inspector




Ventana jerárquica

  • En inglés: Hierarchy Window
Unity3d interfaz 2.jpg


  • En esta ventana van a aparecer todos los componentes que conforman nuestro juego.
Entre estos componentes tendremos:
  • Cámara.
  • Personajes del juego.
  • Efectos de sonido.
  • Animaciones.
  • Luces.
  • Vídeos.
  • Y cualquier elemento que incorporemos a nuestro juego.
  • A cada uno de los objetos que se encuentre en la ventana de jerarquía se denomina Game Object.
Los objetos van a aparecer situados de forma jerárquica de igual manera a como vemos los archivos del Sistema Operativo por medio del programa explorador de windows, es decir, de forma jerárquica.


  • Inicialmente aparece un único gameobject que es la cámara 3D.
Como vemos, la cámara se encuentra (en la jerarquía) dentro de un 'icono' con nombre Untiled.
Unity3d interfaz 3.jpg


  • Este icono representa una escena (scene) de nuestro juego.
¿ Y qué es una escena ?
Podemos definirla como un conjunto de objetos que conforman una fase de nuestro juego.
Imaginemos un juego:
  • El comecocos: Este juego tendría una única escena formada por el fondo, los fantasmas y el comecocos.
  • Una aventura gráfica: Este juego tendría varias escenas, una estaría en el interior de la nave. Otra escena sería en la superficie del planeta,....
También podríamos tener escenas por niveles del juego, en el que cada nivel aparezcan escenarios nuevos con nuevos enemigos.
  • Como paso inicial vamos a darle un nombre a nuestra escena. Para ello vamos a presionar la elemento del menú principal File y escogeremos la opción Save Scene as o bien podemos pulsar la combinación de teclas Mayusc+Control+S
Unity3d interfaz 4.jpg
Le damos de nombre Escena_1.


  • Podemos comprobar como la escena guardada aparece en la parte inferior de la interfaz con el nombre que le dimos.
Unity3d interfaz 5.jpg



  • A parte de añadir los gameobjects de nuestro juego, como comentamos anteriormente, tendremos una relación de jerarquía entre los objetos.
¿ Y para qué nos va a servir esto ?
Pues resulta que:
  • Vamos a poder realizar operaciones que van a afectar a todos los objetos de la jerarquía a la vez.
  • Nos permite establecer propiedades de los hijos con valores relativos con respecto a los valores que tenga un objeto padre.
Imaginemos un caso;
  • Un juego en el que queramos que delante de nuestra nave siempre se encuentren 4 escudos protegiéndola. Podemos crear los escudos 'dentro' de la nave en la jerarquía, de tal forma que su posición siempre será relativa a la nave. Si movemos la nave, se mueven los escudos.



Añadiendo objetos

  • Sobre esta ventana es donde vamos a añadir todos los componentes que conforman nuestro juego.
Unity permite añadir figuras 'básicas' de forma muy sencilla.
Basta con pulsar el botón derecho sobre la escena y en el menú emergente escoger GameObject => 3D Object => Y ahora podemos escoger una de las figuras que incorpora el Unity.
En nuestro caso, un Cubo (Cube).
Al hacerlo se visualizará un cubo en la ventana central (SceneView, que será explicada posteriormente).
Unity3d interfaz 7.jpg
Debéis fijaros en dos cosas:
  • El cubo en la jerarquía está dentro de la escena, pero a la misma altura que la cámara.
Si os aparece dentro de la cámara quiere decir que habéis creado el objeto pulsando el botón derecho del ratón sobre la cámara y no sobre la escena.
  • En la SceneView (ventana central) os debe aparecer el cubo con una perspectiva 3D. Si no es el caso aseguraros que en la parte superior de la ventana central (el marco) no esté seleccionado la opción 2D (está indicado en la imagen anterior).



Vista de Escena

  • En inglés Scene View.
Unity3d sceneview 1.jpg
Nota: Recordar que el icono '2d' de la parte superior no debe estar marcado.


  • Esta es una de las ventajas de utilizar un motor de juegos frente a un framework.
Vamos a poder ver en 'tiempo real' como queda la escena con todos los objetos del juego (gameobject).


  • Va a ver una relación directa entre esta vista y ciertas 'propiedades' de la ventana inspector (la marcada como el número 3 al principio de este punto).
Esto es así ya que vamos a poder:
  • Mover.
  • Rotar
  • Escalar
Todos los objetos que conforman la escena y lo vamos a poder realizar desde la 'Scene View' o desde la 'Window Inspector'.


  • Podéis consultar en este enlace las teclas y combinaciones de tecla-ratón que se pueden aplicar en esta vista.


  • Las más importantes que vamos a utilizar son las siguientes (siempre sobre la ventana de escena):
Nota: Estas combinaciones están probadas con un ratón de dos botones y una rueda. Con otras combinaciones consultar el enlace anterior.


  • Pulsando la rueda del ratón y sin soltar mover el ratón a izquierda-derecha, arriba-abajo: Nos movemos a izquierda-derecha y arriba-abajo pero sin rotar. Tener en cuenta que lo que movemos es la forma en cómo la persona que programa ve los objetos del juego. Pero recordar que como se va a visualizar la escena lo determina la cámara. Lo veremos después.
Fijarse que en la barra de herramientas se selecciona la mano:
Unity3d w escena 7.JPG
  • Movimiento con la rueda del ratón
  • Pulsamos la rueda del ratón y sin soltar...

  • Movemos a izquierda-derecha y arriba-abajo


    • Pulsa el botón derecho del ratón (o la tecla ALT) y sin soltar mover el ratón a izquierda-derecha, arriba-abajo: La vista 'rota' hacia la izquierda-derecha y arriba-abajo. Fijarse que el icono cambia por un ojo.
    Fijarse que en la barra de herramientas se selecciona un ojo:
    Unity3d w escena 8.JPG
  • Rotación con botón derecho de ratón
  • Pulsamos el botón derecho del ratón (o la tecla ALT) y sin soltar...

  • Movemos a izquierda-derecha y arriba-abajo provocando una rotación.


    • Pulsa la tecla ALT más el botón derecho del ratón y sin soltar mover el ratón a izquierda-derecha o arriba-abajo: Hacemos un zoom sobre la escena, acercándonos o alejándonos.
    Fijarse que en la barra de herramientas se selecciona una lupa:
    Unity3d w escena 10.JPG
  • Zoom pulsando la tecla ALT más el botón derecho del ratón
  • Pulsa la tecla ALT más el botón derecho del ratón y sin soltar...

  • Mover el ratón a izquierda-derecha o arriba-abajo.


    • Si al movernos o desplazarnos queremos situarnos rápidamente en el sitio donde se encuentra un 'gameobject', solo tenemos que seleccionarlo en la 'ventana jerárquica' y situándonos sobre la 'ventana de escena' pulsar la tecla F
  • Tecla F para situarnos en un objeto
  • Hemos perdido al objeto o queremos situarnos donde se encuentra.

  • Seleccionamos el objeto en la 'ventana jerárquica'.

  • Ponemos el ratón sobre la 'ventana de escena' y pulsamos la tecla F.


    • Como comenté anteriormente, no tiene nada que ver la vista del desarrollador con la vista del juego. La vista del juego viene determinada por una cámara. La cámara está situada en una posición dentro de la escena, 'apuntando' hacia un lugar.
    Si en la 'ventana jerárquica' pulsáis sobre la cámara, podéis ver cual será la vista del jugador cuando comience el juego.
    Unity3d w escena 16.JPG
    Esta misma vista la podéis conseguir si pulsáis la 'pestaña' Game de la 'ventana de escena':
  • Mostrando la escena a partir de la cámara
  • Pulsamos sobre 'Game'.

  • Vemos como queda el juego desde el punto de vista de la cámara.


  • En otro punto hablaremos de la cámara, simplemente tened en cuenta que es como un gameobject con las propiedades de los mismos, como posición, rotación,...Podéis utilizar la tecla F para ver la posición de la cámara en la escena, como hicimos antes con el cubo:
    Unity3d w escena 19.JPG
    La 'pirámide' que sale de la cámara representa el área de visualización de la misma.


    • En el mundo 3D disponemos de tres ejes (X-Y-Z). El icono que está dentro de la 'vista de escena' permite visualizar un objeto situándonos en uno de esos tres ejes.
    Unity3d w escena 20.JPG
    Si pulsamos sobre uno de los ejes, nos situaremos en ese eje mirando hacia el objeto.
    • El eje X es el que va de derecha a izquierda.
    • EL eje Y es el que va de arriba a abajo.
    • El eje Z es el que va de dentro a fuera (como si saliera del monitor).
    En este caso no vais a notar la diferencia visualmente al pulsar ya que el cubo no tiene texturas para 'identificar' las caras del mismo. Simplemente veréis que vuestra perspectiva (la del programador) cambia.








    Ventana Inspector

    • En inglés Window Inspector.
    • En esta ventana vamos a poder:
    • Modificar la posición, rotación y escala de los gameobjets que conforman el juego.
    • Añadir script's (códigos de programación).
    • Añadir componentes como sonidos, efectos, detección de colisiones, gravedad,....


    Unity3d w inspector 1.JPG


    • Cada uno de esos elementos son Componentes que van a afectar al GameObject asociado.




    Iniciar-Pausar-Parar el juego

    • A medida que vayamos desarrollando el juego querremos hacer pruebas sobre el mismo. Para poner el juego 'en marcha' debemos de pulsar el botón Play que se encuentra en la parte superior de la 'vista de escena'.
    Unity3d entorno jugar 0.jpg
    Si pulsamos el botón de 'play' pasaremos a estar en la pestaña de 'Game' y el juego se estaría ejecutando (ahora mismo no pasa nada ya que no realizamos ninguna acción).
    • Si estamos en modo 'Play' podemos pausar el juego pulsando el botón a la derecha del mismo ('Pause').
    • Estando en modo 'Pause' podemos pulsar el botón siguiente ('Next Step') para 'avanzar' el juego y volver a estar en 'Pause'.


    • Fijarse que a pesar de estar en ejecución podemos modificar los valores de las variables de cualquier GameObject y este las aplicaría inmediatamente.
    Por ejemplo, modificar la posición en la 'ventana inspector' del cubo y veréis como se desplaza en la pestaña de 'Game' en la 'vista de escena'.
    Todas estas modificaciones en ejecución no se guardarán al parar el juego y volverán a sus valores originales.


    • Para distinguir cuando estamos en ejecución (muchas veces pasa que no nos damos cuenta, modificamos parámetros de los GameObjects y al parar volvemos a los valores anteriores).
    Para ello seguimos estos pasos:



    Proyect Window / Console

    • En la parte inferior encontramos la Proyect Window.
    Unity3d entorno proy 1.JPG


    En esta ventana se encuentran todos los Assets (son los recursos que vamos a usar para el juego, como gráficos, animaciones, materiales, texturas, sonido,...) organizados como si fueran un sistema de archivos, en forma de carpetas.
    Excepto en algunos casos, podremos organizarlo como queramos, creando nuestras propias carpetas y añadiendo dentro de ellas los recursos que usaremos para desarrollar nuestro juego.
    Nuestro juego también va a tener asociado ciertos programas denominados scripts (existe una carpeta con ese nombre en el árbol del 'Proyect Window'. Si alguno de esos scripts está mal programado, aparecerá el error correspondiente en la parte baja de dicha ventana, como aparece en la captura anterior.


    • En la pestaña de Console aparecen los errores que pueda haber en los scripts y también los errores que se puedan producir durante la ejecución del juego.
    También sirve como recurso para los programadores para mostrar los valores de variables utilizadas dentro de los scripts.


    Más información en este enlace.





















    -- Ángel D. Fernández González -- (2018).