16
Unreal Engine 4 José María Egea Canales

Tecnología: Unreal Engine 4

Embed Size (px)

Citation preview

Unreal Engine 4José María Egea Canales

Índice

• ¿Qué es?• ¿Cómo funciona?• Enséñamelo (ejemplo de uso)

¿Qué es?

Es el motor para hacer videojuegos

• Suite completa de herramientas de desarrollo• Multiplataforma + VR• Comunidad de usuarios enorme• *Gratis con todo ----------------------------------*

¿Cómo funciona por fuera?

• Se descarga de la web el launcher• Con el launcher descargamos una versión• Creamos un proyecto (tiene muchas plantillas)• A trabajar

¿Cómo funciona por dentro? - Estructura

¿Cómo funciona por dentro? - Blueprints

• Los blueprints son un sistema de scripting visual completo• Está basado en nodos que se unen entre sí• Permiten hacer prácticamente todo• Permiten ver cualquier cambio en tiempo real

*También se puede trabajar por código, pero toca compilar y otros

Vamos a ponerlo en práctica

1. Crear un proyecto vacío de blueprints2. Crearnos un personaje3. Programarle movimientos4. Hacer que el motor recoja el personaje

Crear un proyecto

1. Iniciamos el motor

2. Creamos un nuevo proyecto

*Si lo hemos creado sin tocar nada, tenemos algunos contenidos de inicio para dejarlo algo

bonito*

Entorno

Esto es el entorno

Para movernos por la viewport:

- Clic derecho + W A S D

Tenemos algunos elementos por el mapa, podemos jugar a quitarlos y añadir otros desde el content browser (arrastrar a la viewport)

Blueprints Básicos

PlayerControllerCreamos un PlayerController

CharacterCreamos un MiPersonaje

[En Content Class] Clic Derecho -> Blueprint Class

Crear el personaje - Pasos

1. Definir los controles2. Utilizar esos controles definidos3. Conectar todo

Este será tu personaje, es feo, pero es tuyo y toca quererlo

Definir el Control

• Editor > Ajustes de proyecto > Entrada• Añadimos control de acción Usar con la letra E• Añadimos control de eje para:

• Moverse Recto -> W y S con escala 1 y -1• Moverse lateral -> D y A con escala 1 y -1• Girar cámara Vertical -> Mouse X con escala 1• Girar cámara Horizontal -> Mouse Y con escala -1

Utilizar los controles definidos - Giro• En nuestro MiPersonaje vamos a nuestro Blueprint (Pestaña Event Graph)

• En el blueprint vamos añadiendo nodos con clic derecho en función de nuestras necesidades

• Necesitamos los eventos que hemos creado antes (GiroLateral, GiroVertical) para obtener la cantidad de giro

• Añadimos los eventos de los controles definidos (clic derecho y escribirlos)• Hacemos clic sobre el triángulo del nodo (conector) y arrastramos• Al soltar nos aparecen posibles nodos para conectar:

• Elegimos AddControllerYawInput para GiroLateral• Y AddControllerPitchInput para GiroVertical

Yaw es una especie de lateral, y Pitch, en vertical (son maniobras de aviones)

Utilizar los controles definidos - Movimiento

Para movernos:

• GetPlayerCameraManager -> Para sacar lo que estamos viendo

• GetRightVector -> Lo obtenemos de la cámara, el vector lateral

• GetForwardVector -> Lo obtenemos de la cámara, vector delantero

• AddMovementInput -> Para añadir cantidad de movimiento del evento• Se conecta directamente al evento• Su Scale Value es el Axis Value• Su World Direction es el RightVector (Lateral) y el ForwardVector

(Delantero)

• En nuestro MiPersonaje vamos a nuestro Blueprint (Pestaña Event Graph)

• En el blueprint vamos añadiendo nodos con clic derecho en función de nuestras necesidades

• Necesitamos los eventos que hemos creado antes (GiroLateral, GiroVertical) para obtener la cantidad de giro

*Lo sé, muchas mates, bienvenido a los videojuegos*

Conectar todo

• Arrastra desde el Content Browser un blueprint de MiPersonaje al mundo

[En el Toolbar principal] Blueprints > Open Level Blueprint• Colocamos un evento BeginPlay (cuando empieza el juego)• Colocamos un nodo Posses (quita el cuadrito case sensitive si no aparece)• Obtenemos el PlayerController (Target) y al MiPersonaje(In Pawn) que hemos

colocado antes

Ya tenemos “juego”

• Le damos a Play y tenemos al personaje que se mueve, colisiona, y si se sale del suelo, se cae al infinito