Unreal Engine ofrece varias formas de crear secuencias de comandos que añadan funcionalidad a tus proyectos. Algunas son ideales para la jugabilidad en tiempo de ejecución, mientras que otras solo son útiles para crear herramientas dentro del editor.
Secuenciación de comandos de Python
Las secuencias de comandos de Python son ideales para procesos de producción y para la interoperabilidad entre aplicaciones 3D, sobre todo en el sector del entretenimiento y los medios. Python es ideal para automatizar procesos de trabajo dentro de Unreal Editor y no puede usarse para secuencias de comandos en tiempo de ejecución. Python está integrado en muchas de las funciones y procesos de trabajo de Unreal Engine.
Las secuencias de comandos de Python se pueden usar en Unreal Editor para hacer cosas como:
Construir canalizaciones o procesos de trabajo a gran escala para la gestión de recursos que conecten Unreal Editor con otras aplicaciones 3D que utilices.
Automatizar tareas laboriosas en la gestión de recursos en el editor, como generar mallas de nivel de detalle (LOD) para mallas estáticas.
Disponer procedimentalmente el contenido de un nivel.
Controlar el editor desde interfaces de usuario que crees tú con Python.
Las secuencias de comandos de Python son un complemento, que se puede activar desde el menú principal, situado en el menú Editar del explorador de complementos, cuando actives el complemento de secuencias de comandos del editor de Python y las Editor Scripting Utilities.
Si quieres más información sobre cómo comenzar a usar Python en Unreal Engine, consulta Scripting the Unreal Editor Using Python (Programación del editor de Unreal con Python).
Para los usuarios de Maya, los procesos de trabajo de Python se integran en áreas clave con animación, rig de control, y rigs de IK. Puedes encontrar más información sobre cómo usar Python en estos procesos de trabajo en los siguientes enlaces:
Secuencias de comandos de Python para animar con el rig de control
Secuencias de comandos de Python para hacer rigging con el rig de control
La secuenciación de comandos visual de Blueprint
Unreal Engine incluye un lenguaje de secuenciación de comandos visual llamado Blueprint. Se trata de un sistema de programación completo que utiliza una interfaz basada en nodos para crear herramientas y procesos de trabajo dentro del editor, elementos jugables para personajes y objetos, activar animaciones y sonidos, y mucho más. El sistema es muy flexible y potente, ya que proporciona a los diseñadores una forma de implementar sus conceptos a través de un conjunto de herramientas que generalmente solo está disponible para los programadores.
Los blueprints son ideales para diseñadores y artistas que quieran desarrollar funcionalidades sin necesidad de tener experiencia en programación. Son útiles para la creación rápida de prototipos y el desarrollar la lógica de forma visual. Blueprint se integra a la perfección con el resto de sistemas de Unreal Engine.
Al usar blueprints en tiempo de ejecución o en el editor podrás, entre otras cosas:
Configurar el movimiento y el comportamiento del personaje para la jugabilidad.
Activar animaciones y sonidos que reproducir.
Crear una interfaz de usuario con UMG.
Crear herramientas en el editor con widgets de utilidad del editor.
Interactuar con objetos, como abrir puertas.
Generar enemigos u otros eventos de juego.
Añadir lógica al nivel, como plataformas móviles.
¡Y mucho más!
Con todo esto en mente, no todos los blueprints son iguales. Hay varios tipos que gestionan la información y la lógica de forma distinta. Estos tipos incluyen:
Este tipo de blueprint incluye un visor y un grafo de nodo. Es especialmente útil para creadores que quieren añadir actores (como personajes jugables, enemigos, recogidas de armas, etc.) que incluyan lógica aplicada.
Es como una clase de Blueprint, pero solo con grafos de nodo. Incluye variables y componentes heredados de su padre. Estos blueprints solo pueden modificar propiedades heredadas, lo que los hace ideales para crear variaciones de una clase padre. Podrías considerarlos como la relación entre los materiales y las instancias de material.
Contiene funciones creadas por usuarios que puedes usar para compartir y enviar datos entre cualquier blueprint que las use. Se trata de un recurso que puedes crear y referenciar en tu explorador de contenido.
Se trata de un tipo especializado de blueprint que solo existe en un nivel cargado. Puede actuar como un grafo de eventos global para todo el nivel, por ejemplo, activando actores u otros eventos como reproduciendo una secuencia de nivel.
Se trata de un blueprint especializado integrado en el editor de modos de animación. Se usan para controlar la animación de una malla esquelética durante una simulación o un juego. Lo que distingue al grafo de nodos de este blueprint es que está configurado para mezclar animaciones, controlar los huesos de un esqueleto y crear la lógica que define la pose final que se debe usar en cada fotograma.
Para obtener más información sobre el uso de blueprints en tus proyectos, consulta los siguientes temas:
Blueprints de animación
Los blueprints de animación forman parte del editor de modos de animación. Se trata de un tipo especializado de blueprint que se utiliza para controlar y gestionar la animación de una malla esquelética. Se usa principalmente para personajes usados en el juego. Puedes definir comportamientos de animación complejos en ellos mediante secuencias de comandos basadas en nodos de Blueprint. Aunque los blueprints de animación suelen usarse para el juego en tiempo real, puedes usarlos para implementar efectos de animación en tiempo real, como física en tiempo real, la simulación de telas o la deformación de mallas.
Si quieres más información sobre los blueprints de animación, consulta la sección de esta guía Cómo utilizar animaciones en tu proyecto o Blueprints de animación.
Widgets de utilidad del editor
Los widgets de utilidad del editor te permiten crear tus propias herramientas, paneles e interfaces dentro del editor utilizando el sistema de secuenciación de comandos visual de Blueprint, con el fin de optimizar los procesos de trabajo. Estos widgets de utilidad pueden manipular y acceder a datos del editor, como actores, recursos y niveles. Cualquier widget de utilidad que compiles se podrá anclar, como cualquier otro panel en el Unreal Editor.
Los widgets de utilidad del editor son ideales para optimizar tus procesos de trabajo, automatizar tareas repetitivas, gestionar recursos y manipular contenido directamente en un nivel.
Si quieres más información sobre ellos y cómo empezar a usarlos, consulta los sieguientes documentos:
Sistema de herramientas programables
El sistema de herramientas programables proporciona funciones y un modo de edición para crear herramientas interactivas personalizadas, con el objetivo de hacer posible que los programadores que no dominan C++ creen herramientas interactivas en el editor. Este complemento expone el marco de herramientas interactivas a Blueprint, proporcionando a creadores y artistas técnicos los medios para diseñar herramientas que se comporten de forma similar a las que se encuentran en el modo de modelado.
Pueden parecerse a los widgets de utilidad dele ditor, pero utilizan una ventana de diálogo no modal que contiene una interfaz de usuario personalizada donde puedes hacer diferentes tipos de secuencias de comandos del editor. Aunque es potente y útil por derecho propio, como diálogo no modal, tiene sus limitaciones. Las herramientas programables son modales, lo que significa que ninguna otra herramienta puede estar activa mientras se están utilizando. Esto también significa que el estado del editor se gestiona de forma más estricta. Las herramientas programables pueden capturar el movimiento del ratón de forma más eficiente, la interfaz de usuario tiene más estructura que los widgets de utilidades y puedes usar las herramientas que crees en tiempo de ejecución.
Algunos casos de uso de las herramientas programables son:
Dibujar geometría básica en 3D, como líneas y puntos.
Añadir conjuntos de propiedades a las herramientas a través de Blueprint y hacer que actúen como ajustes de herramientas visibles para el usuario.
Crear uno o varios gizmos 3D, controlar sus posiciones y responder a los cambios de transformación.
Emparejar las herramientas programables con otras funciones del motor, como la generación procedimental de contenido (PCG) y el diseño de grafismos en movimiento.
Si quieres más información, consulta la sección Sistema de herramientas programables.
Siguiente página
Diseño y construcción de mundos en Unreal Engine para usuarios de Maya
Una introducción a las herramientas de diseño de Unreal Engine para crear escenas para usuarios de Maya.