El tutor de nuestro curso online de Desarrollo de Aplicaciones para Android, Víctor Ramírez Las,…
Prefabs de Unity para crear videojuegos en primera persona
1.
Prefabs de Unity para crear videojuegos en primera persona
En Unity podemos crear fácilmente videouegos en primera persona, teniendo una visión de la escena desde la perspectiva del personaje principal.
Para establecer esa visión y controlar el movimiento del protagonista de videojuego, Unity nos proporciona dos prefabs, denominados FPSController y RigidBodyFPSController. Estos prefabs están disponibles en el package Characters, a partir de la versión de Unity 5.0.
Para importar el package que almacena dichos elementos. podemos emplear dos métodos:
- Seleccionar el paquete de activos Characters durante la creación de un nuevo proyecto (imagen debajo con recuadro rojo; pincha para ampliar)
- Desde una escena ya cargada, seleccionando el menú Assets > Import Package > Characters. (imagen con recuadro azul)
Nota: en caso de no disponer del package Characters, podemos descargarlo del sitio web de Unity. Al acceder allí, escogeremos dentro de la casilla «DESCARGAS ADICIONALES«, la opción «Activos estándar«.
Se recomienda revisar el tutorial StandardAssets (AssetPackages), dónde se aborda este aspecto de manera más específica.
A continuación, describiremos los diferentes componentes que construyen cada uno de estos Prefabs, algunos de los cuáles ya hemos hablado en anteriores publicaciones.
Prefab FPSController
Prefab formado por una jerarquía de padre e hijo, donde el objeto FPSController es padre del GameObject FirstPersonCharacter:
Podemos encontrarlo dentro de la ventana project, encargada de mostrar todo los recursos externos al proyecto, y más concretamente a través de la ruta Assets > Standard Assets > Characters > FirstPersonCharacter > Prefabs.
Recordamos que al ser un prefab, es un objeto reutilizable creado con una serie de características dentro de la vista proyecto, que se puede instanciar en el videojuego cuando se necesite y las veces que queramos.
Vemos los componentes que lo construyen:
Componentes FPSController
- Transform: describe los siguientes elementos del objeto en la escena
(todo GameObject implementa este componente por defecto, por lo que se omitirá su descripción en los siguientes elementos):- La posición (coordenadas X,Y,Z)
- La rotación : en grados alrededor del eje X,Y,Z
- La escala : tamaño del objeto, que al definir valor 1, indica que es el tamaño original del objeto en la escena.
- Character Controller: permite controlar la aceleración y el movimiento de un personaje (ya sea en primera o tercera persona) a lo largo de un escenario, sin hacer uso de físicas.
- First Person Controller (Script): encargado de implementar la lógica de los diferentes parámetros relacionados con el personaje como por ejemplo los que regulan su velocidad al caminar o correr, la pista de audio que deberá reproducirse al realizar determinada acción o la intensidad de la gravedad que le afectará.
- Rigidbody: componente que permite añadir al GameObject algunas características que tendría un cuerpo físico en la realidad, como podrían ser masa, gravedad, fricción, etc. Es necesario establecer este componente cuando se desea detectar colisiones entre dos objetos (al menos uno de los dos debe contenerlo).
- Audio Source: permite controlar la reproducción de una pista de audio en la escena del juego, atenuando la intensidad del sonido al aumentar la distancia.
Componentes FirstPersonCharacter
- Transform
- Camera: Dispositivo que permitirá mostrar el mundo que rodea al jugador dentro del juego, proporcionando una vista de la escena desde la posición de dicho objeto.
- Audio Listener: Componente que funciona a modo de receptor, y que permite a partir de un elemento Audio Source, recibir y reproducir un sonido a través del hardware de salida de audio del dispositivo.
Prefab RigidBodyFPSController
Prefab que al igual que el objeto FPSController, estará formado por una jerarquía de padre e hijo, donde el objeto RigidBodyFPSController es padre del GameObject MainCamera.
Puede encontrarse dentro de la ventana project, encargada de mostrar todo los recursos externos al proyecto, y más concretamente a través de la ruta Assets > Standard Assets > FirstPersonCharacter > Prefabs.
Componentes RigidBodyFPSController
- Transform
- Rigidbody
- Capsule Collider: colisionador de cápsula que define un área con forma de cápsula alrededor del objeto.
- RigidBody First Person Controller (Script): script que permite ajustar entre otros, los valores de movimiento del personaje hacia adelante, hacia atrás, potencia de salto o el grado de sensibilidad del control de la cámara con el ratón del pc.
Componentes MainCamera
- Transform
- Camera
- Audio Listener
- Head Bob (script): Script que permite simular el movimiento tanto vertical como horizontal de la cabeza del personaje, al moverse a lo largo de la escena.
En próximas publicaciones veremos el componente Canvas, de gran utilidad para la construcción de interfaces de usuario y desarrollaremos un sencillo proyecto implementando una interfaz de usuario táctil.
Esta entrada tiene un comentario
Los comentarios están cerrados.
[…] 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 […]