Con Scene Graph puedes pasar rápidamente de la creación de cajas grises y mundos a un nivel jugable completo en unos sencillos pasos.
Scene Graph es un sistema nativo de Verse que aprovecha las funciones de Verse, es decir, te ofrece la posibilidad de añadir más experiencias de juego y personalización a tus proyectos con objetos interactivos construidos a medida.
Asimismo, mejora la estabilidad del proyecto porque Verse realiza todo el trabajo pesado en segundo plano, de forma que garantiza el funcionamiento de las entidades según lo previsto. Verse también cuenta con elevado acceso a todas las partes de las entidades y componentes de la escena, lo que implica que puedes añadir mayor variedad a tu escena.
Cómo habilitar Scene Graph en tu proyecto
Para usar Scene Graph en tu proyecto:
En la barra de herramientas, selecciona Proyecto > Configuración del proyecto para abrir la ventana Configuración del proyecto.
En la ventana Configuración del proyecto, debajo de Acceso beta, activa Scene Graph Tools. Scene Graph está activado de forma predeterminada en la versión beta.
Para comprobar que puedes ver las funciones de Scene Graph, en la barra de herramientas selecciona Colocar actores y verifica Entidades en el desplegable Colocar actores.
Objetos en el metaverso
El metaverso es una experiencia de entretenimiento social en línea en tiempo real donde la gente juega y se conecta en un mundo 3D. Epic Games está diseñando el sistema Scene Graph de UEFN para que puedas crear estas experiencias en el metaverso.
En el sistema de Scene Graph, puedes crear instancias y reutilizar objetos sin la clasificación de actores de Unreal Engine. En el núcleo de este grafo hay un conjunto de bloques de construcción que utilizan datos y lógica para construir tu juego, así como para renderizar y simular objetos en cualquier entorno de juego.
Los actores y las entidades no son intercambiables, sino que constituyen sistemas diferentes que trabajan de forma conjunta en la escena.
Con Scene Graph puedes establecer un marco de simulación 3D en tiempo real en el que todas las decisiones de diseño y los resultados sean visibles al instante en el visor. Estos pueden editarse en el panel Detalles o en el editor de prefabricados.
Puedes importar recursos que crees o compres a un proveedor, como Fab, y usarlos con Scene Graph para crear objetos y prefabricados personalizados.
Tienes la posibilidad de reutilizar muchas veces y con menos memoria cualquier cosa que construyas en Scene Graph. Su sistema de construcción está diseñado para permitir compartir contenido complejo y simulaciones compartidas, al mismo tiempo que impone límites entre el contenido.
Entidades y componentes
Las entidades y los componentes son el eje central de Scene Graph. Funcionan controlando la definición y el comportamiento de los objetos.
Las entidades son contenedores de componentes u otras entidades. Una entidad vacía no tendrá ningún efecto visible ni funcionalidad. Los componentes son los que proporcionan datos y comportamiento a las entidades. Es decir, definen lo que una entidad debe hacer en la escena.
Una entidad puede contener cualquier número de componentes diferentes. Sin embargo, solo se puede añadir un tipo de componente específico a la vez a una entidad. Por ejemplo, solo se puede utilizar un tipo de light_component en una entidad. Para utilizar varios componentes de un tipo común, puedes crear una nuevas entidades que contengan cada instancia del componente.
Algunos tipos de componentes los generan recursos creados en UEFN. Un componente generado mediante recursos es una clase de componente que se crea automáticamente a partir de contenido ya existente de un proyecto, como una malla, un sonido o un recurso de sistema de partículas. Es posible que estos recursos expongan propiedades que puedes modificar en el componente generado.
Asimismo, tienen propiedades editables Estas propiedades pueden ser físicas, como una malla estática y un sistema de partículas, o lógicas, como una etiqueta de jugabilidad o un código de Verse personalizado, que definen el movimiento de una plataforma. Todas las entidades tienen un componente de transformación por defecto para especificar dónde existe la entidad en el mundo.
Construir una entidad con Verse no crea un componente de transformación automáticamente.
Con Scene Graph puedes crear rápidamente escenarios y mecánicas de juego aprovechando los datos físicos de las mallas, las señales de sonido y mucho más.
Una entidad se convierte en la representación física de una malla estática cuando se añade un vcomponente de malla a la entidad y se selecciona una malla en la ranura de malla del componente. Esto significa que puedes montar rápidamente edificios o piezas de decorado individuales y utilizarlos de inmediato en tu escena.
Por ejemplo, en el vídeo siguiente, una entidad se convierte en un clúster de árboles de hoja perenne.
Puedes convertir este clúster de árboles en un prefabricado por sí solo o combinarlo con otras entidades para crear un prefabricado de bosque.
Una entidad (la entidad de simulación) se sitúa en la raíz de tu proyecto para representar la simulación. La escena se crea cuando las entidades se anidan bajo la entidad de simulación. Al añadir entidades al mapa, automáticamente se crean entidades hijo de la entidad de simulación.
La entidad superior de un prefabricado es la entidad raíz del prefabricado con otros prefabricados y entidades anidadas debajo. Los prefabricados padre incluyen el aspecto y comportamiento de sus hijos para interactuar con otros objetos de la escena.
Haz clic en la imagen para ampliarla.
Entidad raíz del prefabricado → WoodenHouse_Tiny_Prefab
Prefabricado hijo → WoodenHouse_RoofSmall_Prefab_C_1
Entidad hijo → Building_WIndowCircle_Bright2
Entidad hijo → Building_WIndowCircle_Bright4
Entidad hijo → Building_WIndowCircle_Dark2
Entidad hijo → Building_WIndowCircle_Dark4
Entidad hijo → WoodenHouse_Floor
Entidad hijo → WoodenHouse_RoofCap2
Entidad hijo → WoodenHouse_RoofCap3
Entidad hijo → WoodenHouse_RoofWindow2
Prefabricado hijo → WoodenHouse_SmallFloor_Prefab_C_1
Entidad hijo → WoodenHouse_Floor
Entidad hijo → WoodenHouse_Wall10
Entidad hijo → WoodenHouse_WallDoor_C4
Prefabricado hijo → WoodenHouse_Windows_Prefab_C_3
Entidad hijo → Building_WindowPlane_Bright3
Entidad hijo → Building_WindowPlane_Bright4
Entidad hijo → Building_WindowPlane_Dark3
Entidad hijo → Building_WindowPlane_Dark4
Entidad hijo → WoodenHouse_Windoows_10
Cada prefabricado hijo incluye componentes que determinan su aspecto y su alineación con otros prefabricados de la escena. Puedes utilizar Verse para centrarte en prefabricados y entidades específicos para cambiar el prefabricado hijo por otro prefabricado, o incluso cambiar el color utilizado para las entidades Building_WindowPlane_Bright y Building_WindowPlane_Dark.
Existen numerosos tipos de componentes que determinan cómo actúa una parte o toda una entidad. Para obtener más información sobre los distintos tipos de componentes disponibles en Scene Graph, consulta la sección Componentes.
Para obtener más información sobre el uso de entidades y componentes, echa un vistazo a la sección Cómo trabajar con entidades y componentes.
Prefabricados
Scene Graph crea prefabricados empaquetando entidades en una relación de ancestro y descendiente. Un ancestro es cualquier nivel de entidad por encima de otras entidades, como padre, abuelo, bisabuelo, etc. Un descendiente es un nivel de entidad inferior al de hijo, nieto, etc.
Todas las entidades seleccionadas, las jerarquías de entidades y sus componentes se añaden al instante al árbol de entidades del prefabricado. Una vez que tengas un prefabricado, puedes personalizar todas sus instancias en el editor de prefabricados.
Para crear una instancia de tu prefabricado, arrástralo fuera del explorador de contenido hasta el visor. También puedes anidar prefabricados dentro de una jerarquía de prefabricados. Puedes utilizar la jerarquía para aplicar los cambios realizados en todas las instancias y prefabricados de la jerarquía.
A medida que actualizas y mejoras el prefabricado, ahorras tiempo porque no es necesario que busques todas las instancias de ese objeto para actualizarlas individualmente.
Además, puedes crear multitud de objetos de aspecto similar seleccionando subpiezas en la jerarquía y anulando diferentes valores de los componentes. También puedes rotar objetos y añadir nuevos valores de componentes a distintas instancias de prefabricados a medida que editas en el editor de prefabricados.
El editor marca todos los cambios en el panel Detalles con un icono de conmutación de anulación en los atributos individuales de los componentes. También marca diferentes iconos de componentes en el botón del menú desplegable de la tarjeta de componentes.
Para volver al diseño original del prefabricado, haz clic en los conmutadores de anulación de componentes individuales. El objeto volverá automáticamente al estado del prefabricado padre. También puedes hacer clic en el botón del menú desplegable de la tarjeta de componentes y seleccionar Borrar anulación.
Para obtener más información sobre la modificación de prefabricados, consulta la sección Prefabricados e instancias de prefabricados.
En el siguiente vídeo se utiliza Scene Graph para crear dos prefabricados de habitaciones de castillo.
La sala se duplica. Un elemento de la sala se modifica al seleccionar la malla del suelo y sustituir la original, lo que crea un nuevo prefabricado. Puedes seguir copiando y sustituyendo partes para montar rápidamente un pequeño castillo e incluso un pueblo. Esto funciona también con componentes, por lo que puedes añadir un comportamiento diferente a cada una de las habitaciones del castillo.
La edición de prefabricados no afecta a la estabilidad ni a la memoria del objeto original ni de sus copias, lo cual significa que puedes terminar la disposición del nivel, el diseño abstracto y artístico para crear objetos personalizados para tu isla. Con el sistema de construcción de Scene Graph, puedes reutilizar los prefabricados que crees en distintos proyectos para crear tu propio universo de juego en Fortnite.
Verse en Scene Graph
Verse es el lenguaje de programación que utiliza Scene Graph para generar y eliminar entidades del mundo y crear componentes y comportamientos personalizados.
Con él puedes crear un farol de exterior oscilante para la casa del ejemplo anterior. Verse te permite definir las propiedades de balanceo, rotación y duración para determinar cómo se mueve el farol.
Los prefabricados que creas en tu proyecto se exponen como una clase a Verse en el archivo Assets.digest.verse de tu proyecto. Las entidades y componentes definidos en tu prefabricado son accesibles en Verse a través de las llamadas a GetEntities() y GetComponents() en un prefabricado.
Para comenzar a usar Scene Graph en Verse, consulta la sección Cómo crear tu propio componente en Verse.
Experiencia práctica
La plantilla de muestra de Scene Graph resume los conceptos básicos del trabajo con las funciones de Scene Graph y se basa en estos procesos de trabajo fundamentales para ilustrar la potencia de la creación de tu proyecto mediante prefabricados y Verse. Cada ejemplo muestra la potencia de utilizar Scene Graph para iterar un diseño y crear objetos de juego y jugabilidad interesantes y funcionales.
Abre el tutorial Cómo crear un juego de plataformas con Scene Graph para obtener más información sobre el uso de Scene Graph para crear juegos interesantes.
Para tutoriales más detallados, echa un vistazo a los tutoriales de Scene Graph disponibles.