Para definir comportamientos de cualquier objeto que intervenga en una aplicación creada con Unreal Engine es necesario usar algún lenguaje de programación, principalmente Blueprint (lenguaje visual integrado en el entorno de desarrollo) o C++, que es el lenguaje nativo del entorno.
Las lecciones a tratar en este tema son:
- Orientación a objetos
- Ejecución (en general)
- Programación visual
- Conversión de objetos
- Acceso a propiedades
- Construcción de objetos
- Registro de componentes
- Gestión de la entrada
- Control de la ejecución
- Uso de macros
- Llamada a funciones
- Interfaz de usuario
- Cálculo matemático
- Temporización
- Simulación física
- Gestión de niveles
- Programación de la jugabilidad
- Gestión de la persistencia
- Multijugador y programación en red
- Percepción automática
- Movimiento automático
- Navegación automática
- Decisión automática
- Evaluación y coordinación automática
De C++ según vamos enseñando BPs se podría enseñar C++; pero por ejemplo lecciones extra que podrían considerarse son Manejo de Vehículos, Gestión del Sistema de Habilidades de Jugabilidad (Gameplay Ability System), Procesamiento de Analíticas, Uso del sistema de reproducción (Replay System), registro visual (Visual Logger), y mucho más que podríamos descargar de la tienda, etc.
Alternativas
Aunque desde Unreal Engine 4, Epic Games dejó de lado aquel «UnrealScript» que se usaba como lenguaje de guionizado en versiones anteriores de su entorno de desarrollo, hoy día han surgido alternativas para los que no quieren programar ni en C++ ni en el lenguaje visual Blueprints.
El más oficial es Verse, un lenguaje de guionizado bastante sencillo y limitado, creado por Epic Games, pero suficientemente potente como para ampliar las capacidades del modo creativo de Fortnite, en lo que se ha venido a llamar Unreal Editor for Fortnite.
Angelscript, por otra parte, es una versión modificada de Unreal Engine que incluye una extensión con un intérprete de este nuevo lenguaje, similar al C++ que se usa en este motor pero algo simplificado. Tiene mejor rendimiento que los Blueprints y hasta es posible transformarlo a C++ para evitar la carga de la ejecución del intérprete de Angelscript. Parece ser de código libre y hay estudios grandes que se están animando a utilizarlo (It Takes Two es el juego de los promotores de este lenguaje, Hazelight, y contiene más de 5000 ficheros con más de 700.000 líneas de código Angelscript).
Más información
Algunas otras referencias interesantes para consultar:
- Estándares y convenciones de código oficiales que usan en Epic Games.