Está en la página 1de 2

Ejercicios de introducción a Unity

1. Escena de Unity
Vamos a crear un proyecto Unity sencillo paso a paso para estudiar las principales
características del entorno. Deberemos:

a) Crear un nuevo proyecto con Unity al que llamaremos BlockGame (File > New Project...).
b) Guarda la escena actual como Escena01 (File > Save Scene). Verás que la escena
aparece como asset del proyecto.
c) Crea un game object de luz direccional (GameObject > Light > Directional
Light). Observa los componentes del objeto cámara y de la luz direccional.
d) Añade a la escena un plano con su posición y tamaño por defecto (GameObject >
3D Object > Plane). Tendremos un plano de 10 x 10 unidades, situado en la posición
de origen (0,0,0).
e) Crea un cubo y situalo sobre el plano (GameObject > 3D Object > Cube). Dale al
cubo el nombre Personaje y un material de color rojo (deberás crear este material como
asset con Assets > Create Material y en el Inspector seleccionar un rojo como Main
Color).
f) Crea un HUD con el texto "SCORE" en la esquina superior izquierda de la pantalla y
de color amarillo. Crea para ello un game object de tipo GUI Text. Ajusta de forma
adecuada las coordenadas del componente Transform, y la propiedad Anchor del
componente GUITest para obtener el efecto deseado. Para que no quede demasiado
pegado al borde de la pantalla, introduce un desplazamiento en el campo Pixel Offset de
GUIText.
g) Crea dos paredes en los bordes del escenario formando una "L". Haz que las paredes
tengan una altura de 5 unidades y alinealas con el borde del plano. Renombralas como
"Pared 1" y "Pared 2", y renombra el plano como "Suelo". Crea un nuevo game object
vacío, renombralo como "Escenario", y agrupa bajo él las dos paredes y el suelo.
h) Crea un prefab (Assets > Create > Prefab), dale el nombre "Habitacion", y arrastra
sobre él el nodo "Escenario". Prueba ahora a crear varias habitaciones iguales en distintos
lugares de la escena utilizando el prefab.

2. Programación de scripts

a) Vamos a añadir un controlador de personajes. Para ello importa el paquete de


Character Controller (Assets > Import Package > Character Controller). Impórtalo todo.
b) Añade a la escena el prefab para poner un personaje en primera persona con Standard
Assets > Character Controllers > First Person Controller. Situa el controlador sobre el
escenario y prueba a ejecutar el proyecto.
c) Elimina el controlador anterior y pon en su lugar un controlador en tercera persona con
Standard Assets > Character Controllers > 3rd Person Controller. Prueba a ejecutar
ahora el proyecto.
d) Elimina el controlador anterior, y añade ahora al cubo con nombre "Personaje" un
componente de tipo script con Scripts > Third Person Controller. Ejecuta el proyecto y
prueba a manejar el cubo.
e) Crea un nuevo script al que llamaremos PersonajeScript. Aplica el script al cubo
"Personaje". Haz que al inicializarse ponga su posición en las coordenadas (0,5,0).
f) Crea ahora una variable pública de tipo Vector3 y de nombre posicionInicial, y
utiliza su valor para posicionar el cubo inicialmente (en lugar del valor fijo del apartado
anterior). Guarda los cambios y vuelve al entorno de Unity. Selecciona el cubo
"Personaje", y en la sección del Inspector verás el parámetro que acabas de crear dentro
del cuadro del componente PersonajeScript. Asigna ahí la posición inicial (0,10,0) al
cubo. Prueba a ejecutar el proyecto.
g) Crea en el script una nueva variable pública de tipo Transform con nombre
habitacion. En Start haz que la posición inicial del cubo se ponga de forma relativa al
objeto asignado en dicho parámetro. Es decir, la posición inicial del cubo será
habitacion.transform.position + posicionInicial. Prueba desde el entorno a
asignar alguna de las habitaciones a este parámetro y comprueba lo que ocurre al iniciar el
juego.
h) Elimina el script Third Person Controller del cubo. Vamos ahora a moverlo nosotros a
partir de los eventos de entrada. Vamos a hacer que pulsando arriba/abajo el cubo se
mueva en estas direcciones. En Update, obtén el cambio de posición en el eje vertical
multiplicando la lectura de dicho eje por el delta time. Incrementa la posición del objeto
con este valor. Ejecuta el proyecto y prueba a mover el cubo.
i) Vamos ahora a mover el cubo utilizando un joystick en pantalla para dispositivos
móviles. Seguiremos los siguientes pasos:
• Importa el paquete de assets Standard Assets (Mobile).
• Añade a la escena el Prefab Standard Assets (Mobile) > Prefabs > Dual Joysticks.
• Crea en el script PersonajeScript una variable pública de tipo Joystick con
nombre moveJoystick.
• En Update, para actualizar la posición en lugar de leer el eje vertical leeremos
moveJoystick.position.y.
• Desde el entorno, asigna al parámetro moveJoystick el objeto Left Joystick.
• Ejecuta el proyecto, instala en un dispositivo móvil la aplicación Unity Remote, y

ejecútala. El dispositivo deberá estar conectado a la misma red que el ordenador con
Unity. En tal caso verás el ordenador en una lista. Selecciónalo, y podrás probar en el
dispositivo el videojuego.

También podría gustarte