A menudo se habla de programar la jugabilidad o la lógica del juego al trabajo de definir y codificar los comportamientos propios de la dinámica y de algunas mecánicas complejas del videojuego. En Unreal Engine existe un armazón de jugabilidad que ofrece clases para facilitar esta tarea: Pawn, Character, PlayerController, GameMode y GameState, GameInstance… Lo […]
Categoría: Informática
Gestión de niveles
El contenido se gestiona en videojuego de varias formas, siendo habitual la palabra «nivel» para cada porción del mundo sobre la que jugamos. Desde código es posible realizar la carga de niveles, e incluso la transmisión (streaming) de niveles en paralelo al funcionamiento del juego. En Unreal Engine 5 tenemos una nueva característica, WorldComposition, para […]
Simulación física
Toda la gestión de colisiones es posiblemente el área más básica a cubrir de la simulación física en Unreal Engine. Además podemos utilizar nodos como LineTraceByChanel o MultilinetraceforObjects para proyectar rayos y ver sus colisiones. Por supuesto también tenemos el API apropiado para aplicar fuerzas a cuerpos que simulen física, como impulsos. Tenemos que tener […]
Temporización
El manejo del tiempo es fundamental en las simulaciones en tiempo real. El lenguaje de programación Blueprints soporta nodos latentes, es decir, utilizar cronómetros (Timers) y líneas temporales (Timeline) para poder realizar instrucciones dilatadas en el tiempo, y no todas a la vez en un mismo fotograma. Evitando repetirse pero aquí sería posible hablar del […]
Cálculo matemático
Es innevitable tener que realizar cálculos matemáticos en una simulación, como por ejemplo realizar una interpolación lineal (LERP) entre dos puntos o realizar algún movimiento cinemático de un objeto. Más información Ahora mismo no hay otros documentos recomendados para consultar.
Interfaz de usuario
La interfaz de usuario puede programarse con Blueprint con normalidad. Existe todo un armazón llamado Slate con todas las funciones necesarias para desarrollar este tipo de interfaces: con eventos específicos del HUD, métodos de pintado, etc. Lo habitual es usar la herramienta UMG para desarrollar visualmente artilugios que colocaremos en la interfaz de usuario sin […]
Funciones
En Unreal Engine se distingue entre funciones puras e impuras, siendo estas últimas las que pueden producir cambios en el estado del mundo virtual. Relacionado con las llamada a funciones, síncrona, está el envío asíncrono de eventos. Al enviar un evento es posible que se nos «cuele» la ejecución de otros actores de por medio, […]
Uso de macros
Para ahorrarnos trabajo, Unreal Engine ofrece un sistema de macros que permiten «reutilizar» fragmentos de código auxiliares que se repitan muchas veces. Ojo, no confundir con la verdadera reutilización de código que es la que hacemos a través de funciones. Podemos crear bibliotecas de macros (Blueprint Macro Library) y así conseguir mucho más rápido los […]
La manera más simple de controlar la ejecución es poniendo instrucciones en secuencia (en C++ las instrucciones se separan mediante el punto y coma, y en Blueprints las instrucciones se conectan mediante el cable blanco y los puertos de ejecución). En Blueprints existe un «azúcar sintáctico», un nodo llamado Sequence que permite organizar de manera […]
Gestión de la entrada
Aunque podemos trabajar directamente con los eventos que representan entradas del usuario (como por ejemplo la pulsación de una tecla), Unreal Engine tiene un sistema de gestión de entrada que permite asociar toda clase de entradas del usuario a eventos personalizados dentro del juego. En Unreal Engine 5 la configuración del sistema de gestión de […]