Conoce el lenguaje de programación que usa Unreal Engine 5: Guía para desarrolladores

| Última modificación: 18 de febrero de 2025 | Tiempo de Lectura: 3 minutos

El desarrollo de juegos web es el sueño de casi todos los desarrolladores. O al menos era mi sueño cuando apenas iniciaba. Recuerdo que un día estaba trabajando con UE5 y no sabía ni por dónde arrancar. Así que me propuse conocer el lenguaje de programación que usa Unreal Engine 5 para tener un punto de partida más claro.

Buscando y buscando, descubrí que lo que hace UE5 es combinar C++ con Blueprints, su sistema de scripting visual. Y sí, mi cabeza explotó porque me enredé aún más. Entonces quise crear esta guía para mostrarte cómo se integran estos dos enfoques. Además, usaré ejemplos prácticos para que los apliques de una vez en el proyecto en el que estés trabajando.

Este es el lenguaje de programación que usa Unreal Engine 5

qué lenguaje de programación usa Unreal Engine 5
Foto de unrealengine.com

C++ en Unreal Engine 5

El núcleo del rendimiento

Podríamos decir que el lenguaje de programación que usa Unreal Engine 5 es C++, porque es su lenguaje principal. Se utiliza para programar la lógica del juego, sistemas de física, inteligencia artificial y otros aspectos.

Como es un lenguaje de programación compilado, permite que el código se traduzca directamente en instrucciones que la máquina ejecuta, así que el rendimiento es muy bueno, mejor dicho, es lo que se busca para juegos con gráficos complejos y simulaciones detalladas.

Ejemplo práctico: Implementación de una función de salto

Imaginemos que deseas que tu personaje pueda saltar. En C++, podrías implementar esta funcionalidad de la siguiente manera:

// Declaración de la clase del personaje
UCLASS()
class MYGAME_API AMyCharacter : public ACharacter
{
GENERATED_BODY()

public:
// Función para iniciar el salto
UFUNCTION()
void StartJump();

// Función para detener el salto
UFUNCTION()
void StopJump();
};

// Implementación de las funciones
void AMyCharacter::StartJump()
{
bPressedJump = true;
}

void AMyCharacter::StopJump()
{
bPressedJump = false;
}

¿Qué hice aquí? Definí dos funciones: StartJump y StopJump. La primera activa la acción de salto cuando se presiona el botón correspondiente, y la segunda la desactiva cuando se suelta el botón. Así es como tienes un control detallado sobre el comportamiento del personaje.

Blueprints en Unreal Engine 5

Scripting visual intuitivo

El otro lenguaje de programación que usa Unreal Engine 5 es Blueprints, solo que no es un lenguaje de programación, es el sistema de scripting visual de UE5 con el cual los desarrolladores crean la lógica de juego sin escribir código tradicional.

Es ideal para diseñadores que desean prototipar rápidamente ideas y ajustar mecánicas sin profundizar en C++.

Ejemplo práctico: Configuración del salto en Blueprints

Para lograr que un personaje salte utilizando Blueprints:

  1. Crear un Blueprint del personaje: Basado en la clase Character.
  2. Agregar eventos de entrada: En el gráfico de eventos, añade el evento InputAction Jump.
  3. Configurar la lógica de salto:
    • Conecta el nodo Pressed del evento InputAction Jump al nodo Jump.
    • Conecta el nodo Released al nodo Stop Jumping.

¿Te diste cuenta? Mira que este método es visual e intuitivo, puedes hacer ajustes rápidos y facilita la colaboración entre programadores y diseñadores.


¿Cómo se integran C++ y Blueprints en Unreal Engine 5?

Entonces, en este punto ya podemos afirmar que el lenguaje de programación que usa Unreal Engine 5 es la combinación de C++ con Blueprints. Sácale jugo a ambos enfoques así:

Exponer funciones de C++ a Blueprints

🔴 ¿Quieres entrar de lleno al Desarrollo Mobile? 🔴

Descubre el Desarrollo de Apps Móviles Full Stack Bootcamp de KeepCoding. La formación más completa del mercado y con empleabilidad garantizada

👉 Prueba gratis el Bootcamp en Desarrollo de Apps Móviles por una semana

Puedes escribir funciones en C++ y hacerlas accesibles desde Blueprints utilizando macros como UFUNCTION(BlueprintCallable). Esto permite que los diseñadores utilicen funcionalidades complejas sin profundizar en el código.

UFUNCTION(BlueprintCallable, Category = "Movement")
void StartJump();

Con esta declaración, la función StartJump estará disponible en Blueprints bajo la categoría «Movement».

lenguaje de programación que usa Unreal Engine 5

Ejemplo práctico: Crear una habilidad especial

Supongamos que deseas implementar una habilidad donde el personaje se teletransporta a una ubicación específica al presionar una tecla:

  1. En C++:
    • Define la función Teleport que maneje la lógica de teletransportación.Expón la función a Blueprints.
    UFUNCTION(BlueprintCallable, Category = «Abilities») void Teleport(FVector TargetLocation);
  2. En Blueprints:
    • En el Blueprint del personaje, añade un evento de entrada para la tecla deseada.
    • Llama a la función Teleport y pasa la ubicación objetivo.

Por eso te decía que, con este enfoque modular hay una mejor colaboración, donde los programadores desarrollan funcionalidades complejas en C++ y los diseñadores las integran y ajustan en Blueprints.

Conocer el lenguaje de programación que usa Unreal Engine 5 te permite desarrollar mejor, porque puedes aprovechar la velocidad de Blueprints para iteraciones rápidas y la potencia de C++ para funcionalidades críticas.

Además, entender cómo se integran C++ y Blueprints en Unreal Engine 5 le sirve a cualquier desarrollador que busque crear experiencias de juego optimizadas y dinámicas. Al aprender ambos enfoques, podrás aprovechar al máximo las capacidades de UE5 y llevar tus proyectos al siguiente nivel.

Gamer, ¿te apasiona el desarrollo de aplicaciones móviles? En el Bootcamp de Desarrollo de Apps Móviles iOS & Android de KeepCoding, aprenderás a crear aplicaciones complejas y nunca antes vistas, dominando las herramientas y lenguajes más demandados en la industria. ¡Inscríbete ahora y transforma tu carrera!

Posts más leídos

¡CONVOCATORIA ABIERTA!

Desarrollo de apps móviles ios & Android

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado