5/6/2018 Proyecto básico con Unity 3D – Academia Android
Blog
Nivel Básico, Videojuegos Proyecto básico con Unity 3D
Proyecto básico con Unity 3D
10/06/2015 Nivel Básico, Videojuegos
Post Series: Conociendo Unity 3D (II)
1. Videojuegos creados con Unity 3D
2. GameObjects y Components en Unity
3. Asset Packages de Unity (activos estándar)
4. Proyecto básico con Unity 3D
5. Videotutorial: Proyecto básico con Unity 3D
En esta publicación, describiremos a grandes rasgos un proyecto muy básico en Unity 3D.
Nos servirá para ver diferentes elementos que servirán de base para la realización de un
‘juego en primera persona’ (la escena se verá desde el punto de vista del personaje) y en un
entorno 3D. Puedes descargar el proyecto al nal de este tutorial.
Notas aclaratorias:
Vamos a presentar cada elemento de forma esquemática. En
posteriores tutoriales, tendremos la oportunidad de ver más en detalle esos
elementos, como pueden ser la cámara, la iluminación o la con guración de un
terreno.
Este ejemplo lo vamos a orientar a generar una versión para dispositivo móvil
Android con interfaz táctil (igual valdría para dispositivo iOS). Para ello vamos a
emplear los recursos (prefabs y componentes) que proporcionaba el paquete
“Standard Assets (Mobile)“. Este package estaba disponible en la versión Unity 4.5
pero no en la 5.0. Aunque este proyecto, que puedes descargar más abajo, incluye
estos Assets y funciona en la 5.0, la forma de plantear la interfaz táctil es distinta
para esta última versión ya que utiliza el nuevo objeto Canvas y nuevos prefabs y
componentes. Lo explicaremos en tutoriales posteriores
Por ahora no vamos a modi car el comportamiento de los componentes mediante
programación. Esto se consigue personalizando los scripts (guiones desarrollados
en C# o Javascript) que nos ofrece Unity o creando unos nuevos. Lo veremos en
tutoriales posteriores.
Estructura del proyecto Unity 3D
[Link] 1/11
5/6/2018 Proyecto básico con Unity 3D – Academia Android
Si recordamos el tutorial donde explicamos los pasos para crear un Proyecto en Unity, éste
contiene por defecto los GameObjects “Main Camera” y “Directional Light” . En la imagen de
abajo, vemos la estructura del primer proyecto que hemos planteado, y donde se aprecia
que hemos añadidos otros elementos, como el prefab “First Person Controls” que será el
jugador, además de un terreno y un efecto viento, para crear las bases de un juego en
primera persona:
“First Person Control” renombrado a “Controles Primera Persona“, que a su vez añade
un ‘Player‘ que hemos llamado “Jugador” y dos componentes GUI Texture (Graphical
User Interface), Right y LeftTouchPad, para mover mediante dos botones táctiles a
derecha e izquierda al personaje y la cámara y que hemos denominado
‘ControlPersonaje‘ y ‘ControlCámara‘.
El Player incluye por defecto una “Capsule“, renombrado a “Objeto“, que es la gura
geométrica que representa al jugador y una “Camara” (hemos eliminado la ‘Main
Camera’ que nos daba una visión general de la escena, y dejado la cámara que se asocia
y sigue al personaje, para simular la visión de éste).
“Terrain” renombrado a “Mapa“, que es el escenario donde se desenvuelve la acción del
juego.
“Wind” renombrado a “Viento“, para crear dicho efecto.
“Directional Light“, renombrado como “Dirección Luz“, que se incluía por defecto.
En la imagen de abajo vemos la pantalla del editor Unity, con los objetos ya creados.
Como ya explicamos de la interfaz de Unity, aparecen una serie de ventanas que en este
caso son:
Ventana ‘Scene‘ (izquierda) donde se muestra el escenario del juego con el terreno ya
creado y donde podemos seleccionar y posicionar el resto de GameObjects como el
jugador, la cámara, la iluminación o los enemigos (veremos la inclusión de un enemigo
en un proyecto posterior más avanzado).
Ventana ‘Hierarchy‘ (derecha) con la estructura del proyecto y la jerarquía de los
diferentes elementos que lo componen, y abajo, la ventana ‘Inspector‘ que nos permite
ver detalles del elemento seleccionado (en este caso ‘Controles Primera Persona’):
[Link] 2/11
5/6/2018 Proyecto básico con Unity 3D – Academia Android
Controles Primera Persona (FPS: First Person Controls)
Objeto que nos permitirá manejar un personaje en la pantalla. Se de ne en primera
persona (vista que nos posibilita visualizar el entorno desde la visión del personaje), a través
de un prefab existente en Unity. Este elemento podemos encontrarlo en la ventana “Project”
(menú Window > Project), dentro de la ruta “Assets > Standard Assets (Mobile) > Prefabs >
First Person Controls” y bastará con arrastrarlo dentro de nuestro mapa para incluirlo.
Si trabajas con la última versión de Unity, verás que los Assets se han reorganizado
como hemos indicado al principio. En este caso, encontrarás el prefab de FPS dentro de
la ruta “Assets > Standard Assets > Character Controllers > First Person Controller“,
que te proporciona un control con teclado (AWSD) para el personaje y del ratón para la
cámara.
Si necesitas un input especí co para dispositivos móviles, se debe implementar desde
el package “CrossPlatformInput” y utilizando el nuevo UI Canvas, que explicaremos en
otro tutorial posterior.
Con guración “Jugador”:
[Link] 3/11
5/6/2018 Proyecto básico con Unity 3D – Academia Android
Nota: Los campos “Move Touch Pad” y “Rotate Touch Pad” deberán rellenarse
arrastrando los componentes GUI Texture de nidos, para controlar tanto el
movimiento del personaje, como el movimiento de la cámara (estos componentes
deberán tener implementados el script “Joystick” para poder asignarlos).
Con guración “Objeto”:
Cámara (Camera)
Es el dispositivo a través del cual el jugador ve el mundo. Este elemento podemos
seleccionarlo a través de la ruta “GameObject > Camera“:
[Link] 4/11
5/6/2018 Proyecto básico con Unity 3D – Academia Android
Con guración “Cámara”:
Aquí podemos ver la pantalla con las opciones de con guracón del Game Object Camera y
que
ControlPersonaje y ControlCámara (GUI Texture)
Objeto que muestra imágenes planas en 2D. Están hechas especialmente para los
elementos de la interfaz de usuario, botones, u objetos decorativos. Su posicionamiento y
escalado se realizan a lo largo del eje X e Y, y se miden en coordenadas de la pantalla, en
lugar de las coordenadas del mundo.
Es posible añadir este objeto a través del menú GameObject > GameObject Empty, y a
continuación dentro de este objeto vacío creado, añadir un componente a través de Add
Component > Rendering > GUI Texture. Las imágenes utilizadas podemos encontrarlas en
la ruta “Assets > Standard Assets (Mobile) > Textures > [Link]“:
[Link] 5/11
5/6/2018 Proyecto básico con Unity 3D – Academia Android
Con guración “ControlPersonaje”:
Con guración “ControlCámara”:
[Link] 6/11
5/6/2018 Proyecto básico con Unity 3D – Academia Android
Una vez de nidos ambos GameObjects, debemos añadir a cada uno de ellos dos
componentes de tipo Script, más concretamente el script “Joystick“.
Mapa (Terrain)
Permite agregar paisajes a nuestros juegos. Es posible agregar un objeto “Terrain” a la
escena seleccionando en el menú GameObject > 3D Object > Terrain (también se añadirá
un activo Terrain correspondiente a la vista del proyecto). Sin embargo, el paisaje inicial será
una super cie plana de gran tamaño. Si nos jamos en el inspector cuando se selecciona el
objeto “Mapa“, nos proporciona una serie de herramientas que podemos utilizar para crear
cualquier característica del paisaje.
Con guración “Mapa”:
[Link] 7/11
5/6/2018 Proyecto básico con Unity 3D – Academia Android
El tamaño del mapa se puede modi car a través de las propiedades width, height y length
en:
Terrain (Script) > > Resolution.
Herramienta de edición de un objeto “Terrain”, que podemos encontrar en la pestaña
“Inspector”:
Veremos en un tutorial y video posterior, la creación de un Terrain con este editor.
Viento (Wind Zone)
Objeto que añade realismo a los elementos situados en el escenario, como por ejemplo a
los árboles, haciendo que estos agiten sus ramas y hojas como si el viento soplara sobre
ellos. Es posible añadir este objeto a través del menú GameObject > 3D Object > Wind
Zone.
[Link] 8/11
5/6/2018 Proyecto básico con Unity 3D – Academia Android
En la imagen podemos observar el objeto “Viento”, resaltado con un círculo rojo, de tipo
“Directional”.
Con guración del objeto “Viento”:
Dirección Luz (Directional Light)
Objeto que permite iluminar escenas y objetos, y poder crear un ambiente visual real. Las
luces se pueden utilizar para simular el sol, una linterna, o una explosión. Es posible añadir
este objeto a través del menú GameObject > Light > Directional Light.
[Link] 9/11
5/6/2018 Proyecto básico con Unity 3D – Academia Android
En la imagen podemos observar el objeto “Dirección Luz”, resaltado con un círculo rojo, de
tipo “Directional”, que simula la incidencia de la luz de la luna. En un tutorial posterior,
veremos más sobre la con guración de la iluminación.
Con guración objeto “Dirección Luz”:
Descarga Proyecto Unity 3D
En este primer proyecto básico simplemente vemos el escenario creado.
Para verlo en tu equipo, descarga los cheros, abre Unity y escoge la opción “Open Project” y
selecciona la carpeta “Primer FPS“. Una vez cargado, abre la escena a través de File > Scene
> PrimerFPS > Assets > [Link].
También tienes disponible la versión para Android, simplemente instalando la apk que se
incluye en esta descarga. Al haberse incluido los controles táctiles sin ningún ajuste, puede
[Link] 10/11
5/6/2018 Proyecto básico con Unity 3D – Academia Android
que en tu móvil no funcione correctamente. Prueba en diferentes partes de la pantalla para
ver si puedes mover la visión de la escena.
Descargar
En la próxima entrega, publicaremos un video sobre este proyecto
Unity videojuegos
¿Quieres compartirlo?
Tweet Share Plus one Share
This Post Has 3 Comments
Videotutorial: Proyecto básico con Unity 3D | Academia Android
11/06/2015 a las 11:55 am
[…] [Link] básico con Unity 3D […]
Creación y con guración de un terreno en Unity 3D | Academia Android
29/06/2015 a las 8:29 pm
[…] vez presentados los elementos básicos del motor de juegos Unity (Assets, GameObjects,
Componentes), es el momento de ver más detalladamente la con guración de […]
Canvas: creación de interfaz de usuario en Unity | Academia Android
18/12/2015 a las 4:08 pm
[…] versiones anteriores de Unity, para crear dicha interfaz, utilizábamos los componentes
GUI Texture. Desde la versión 4.6, se ha introducido el nuevo componente Canvas, que hace
más fácil dicho […]
Comments are closed.
[Link] 11/11