Datasmith trae datos de diseño de diversas aplicaciones de origen a Unreal Engine, normalmente con el fin de crear visualizaciones y experiencias en tiempo real en torno a esos datos. Sin embargo, a menudo, mientras trabajas en la creación de esas visualizaciones y experiencias en Unreal Engine, los datos de diseño o la escena en los que basas tu trabajo tienen que cambiar para cumplir nuevos requisitos o incorporar los comentarios de las partes interesadas. Para evitar repeticiones costosas y tediosas, debes ser capaz de incorporar esos cambios previos sin perder todo el trabajo que has hecho en Unreal Editor.
Esta página describe las distintas formas de incorporar actualizaciones de contenido de Datasmith en tu proyecto de Unreal Engine y lo que ocurre con tus recursos y actores en el proceso. Tienes dos opciones:
-
Reimportar escena completa de Datasmith: esto actualiza el recurso de escena de Datasmith para que contenga los últimos cambios realizados en tu escena de origen e intenta conciliar esos cambios con el trabajo que has hecho en Unreal Editor. Consulta Cómo reimportar la escena completa más abajo.
-
Reimportar recursos individuales importados por Datasmith: por ejemplo, mallas estáticas, materiales o texturas. Esto te permite procesar cambios en los recursos seleccionados sin que el resto de la escena de Datasmith se vea afectada. Consulta Cómo reimportar recursos individuales más abajo.
Para obtener instrucciones detalladas sobre cómo usar estos procesos de importación en Unreal Editor, consulta Proceso de trabajo de reimportación de Datasmith.
Cómo reimportar la escena completa
Haz clic en la imagen para verla a tamaño completo.
Puedes reimportar una escena de Datasmith completa de una sola vez. De esta forma, se actualizan todos los recursos creados por Datasmith en el explorador de contenido para que coincidan con los últimos cambios realizados en la aplicación o el archivo de datos de origen. Desde ahí, puedes actualizar selectivamente los actores de escena de Datasmith en tus niveles para sincronizarlos con la nueva jerarquía de escena que mantiene el recurso de escena de Datasmith.
Cambios en la jerarquía de escenas
Cuando reimportas una escena de Datasmith, la jerarquía de escenas contenida en el recurso de escena de Datasmith se actualiza inmediatamente con los últimos cambios que hayas realizado en la escena de origen. Después de la importación, la jerarquía de escenas del recurso de escena de Datasmith contendrá la misma información que si estuvieras importando la escena por primera vez.
Sin embargo, esos cambios en la jerarquía de escenas no se reflejarán necesariamente en los niveles de Unreal Engine que contengan tu escena de Datasmith. Las instancias de la escena de Datasmith que hayas soltado en un nivel del proyecto quedarán desfasadas con respecto a la jerarquía de escenas del nivel hasta que las sincronices con el recurso actualizado.
Al sincronizar, se actualiza la información del actor de escena de Datasmith y sus hijos en el esquematizador del mundo para que coincida con el recurso actualizado de la siguiente manera:
-
Actores modificados. Todos los actores que no hayas modificado en Unreal Editor se actualizan inmediatamente para coincidir con la información más reciente sobre ellos en la escena de Datasmith reimportada. Todos los actores que sí hayas modificado en Unreal Editor se actualizan para coincidir con la información más reciente de la escena de Datasmith reimportada, excepto los cambios que Datasmith haya registrado como anulaciones.
-
Actores nuevos. Cualquier objeto nuevo que hayas añadido a tu archivo de origen desde la última vez que importaste tendrá actores nuevos en el nivel para representarlos.
-
Actores eliminados. Los actores eliminados del nivel de Unreal Engine correspondientes a todos los objetos que hayas eliminado del archivo de origen, a menos que dichos actores contengan otras anulaciones. Si el actor de Unreal que se corresponde con un objeto eliminado contiene anulaciones, no se elimina del nivel hasta que tú lo hagas específicamente. Cualquier actor que hayas eliminado del nivel en Unreal Engine pero que siga existiendo en el archivo de origen no se vuelve a añadir a tu nivel por defecto. Sin embargo, puedes activar esta opción al sincronizar el actor de escena de Datasmith en tu nivel con el recurso de escena de Datasmith reimportado.
-
Relaciones de paternidad. La jerarquía de parentesco de los actores en el nivel se actualiza para coincidir con los cambios en el archivo de origen.
Por ejemplo, la siguiente imagen del antes y el después ilustra lo siguiente:
-
Los objetos que se han eliminado de la escena de origen (en este caso, los objetos Lift) se eliminan de la escena de Datasmith.
-
Los cambios realizados en la estructura de parentesco del objeto en la escena de origen (en este caso, las luces que se agrupan bajo un nuevo elemento padre) se reflejan en la escena de Datasmith.
-
Los objetos que se han añadido a la escena de origen (en este caso, los cuadros de herramientas) se añaden a la escena de Datasmith.
Haz clic en la imagen para verla a tamaño completo.
Hay dos formas de sincronizar tu actor de escena de Datasmith con su recurso:
-
Cuando reimportas un recurso de escena de Datasmith, puedes actualizar automáticamente cualquier actor de escena de Datasmith del nivel abierto que se haya creado a partir de ese recurso. Este es un método sencillo que funciona bien si solo has añadido tu escena de Datasmith a un único nivel.
-
Puedes sincronizar el actor de escena de Datasmith en un nivel con su recurso de escena de Datasmith a la carta en cualquier momento. Tendrás que usar este método si tienes varios niveles distintos en tu proyecto que contengan instancias de tu escena de Datasmith y necesitas que todos reflejen los cambios en tu escena de origen.
Para obtener más información, consulta la sección Cómo reimportar contenido de Datasmith.
Cambios en la geometría, los materiales y las texturas
Al reimportar una escena de Datasmith:
-
Datasmith recrea los recursos de malla estática, textura e instancia de material solo si los has modificado en el archivo de origen desde la última vez que importaste la escena.
-
Datasmith siempre recrea todos los recursos de material padre, independientemente de si se han modificado o no en el archivo de origen.
Cuando Datasmith recrea un recurso, es posible que sobrescriba los cambios que hayas realizado en ese recurso en Unreal Engine.
Por lo general, no deberías perder la información que Datasmith registra como anulaciones, o cualquier información que sea específica de la representación de Unreal Engine de los objetos de tu escena. Sin embargo, es posible que pierdas los cambios que hayas realizado en Unreal Engine en la información que trae Datasmith, pero que Datasmith no registra como anulación. Por ejemplo, al sobrescribir un recurso, se sobrescribirán los cambios que hayas hecho en Unreal Engine en el interior de un grafo de material padre o en la geometría de un recurso de malla estática.
Para no perder los cambios realizados en los recursos en Unreal Engine, tienes dos opciones:
-
Al reimportar, desmarca la casilla de verificación Procesar del tipo de recurso correspondiente en el cuadro de diálogo Opciones de reimportación para evitar que se vuelva a importar ese tipo de recurso. Por ejemplo, si has modificado un grafo de material importado en Unreal Engine y no quieres que se pierdan los cambios, puedes desmarcar la opción Materiales y texturas. Sin embargo, si hay otros recursos material que quieras actualizar desde el origen, esta opción no funcionará. En este caso, podrías reimportar de forma selectiva solo los recursos del tipo que quieras actualizar. Consulta Opción 2. Cómo reimportar recursos individuales más abajo.
-
Cada vez que necesites modificar un recurso que has importado con Datasmith, duplica el recurso que quieras modificar en una carpeta diferente y modifica el duplicado en su lugar. Luego, actualiza los posibles usos del recurso original para usar tu duplicado en su lugar. Cuando vuelvas a importar, se sobrescribirá el recurso original, pero tu duplicado permanecerá intacto.
Cuando reimportas la escena después de eliminar objetos o materiales de tu archivo de origen, Datasmith no elimina los recursos que había creado previamente para esos objetos. Los recursos permanecen en el explorador de contenido, por lo que puedes seguir usándolos en el Unreal Editor como recursos independientes, fuera del contexto de la escena de Datasmith. Sin embargo, cuando sincronizas un actor de escena de Datasmith en uno de tus niveles para que coincida con el recurso de escena de Datasmith reimportado, las instancias de esos recursos eliminados también se eliminarán (a menos que contengan anulaciones).
La siguiente imagen muestra el antes y el después de lo que ocurre con los recursos de malla estática al reimportar una escena:
-
Los objetos que hayas modificado en la escena de origen (el globo de luz en este ejemplo) se recrean en Unreal Engine y se sobrescriben las versiones antiguas de los recursos.
-
Los objetos que hayas eliminado de la escena de origen (los elementos de ascensor amarillos en este ejemplo) no se eliminan del explorador de contenido del proyecto.
-
Los objetos que hayas añadido a la escena de origen (el cuadro de herramientas en este ejemplo) se añadirán al explorador de contenido como recursos nuevos.
Haz clic en la imagen para verla a tamaño completo.
Recuerda que cuando modificas un recurso en Unreal Engine, el cambio se refleja inmediatamente en todos los lugares donde se use el recurso. Lo mismo sucede cuando Datasmith recrea o modifica un recurso durante una reimportación. Por ejemplo, si cambias la geometría de un objeto en tu aplicación de origen, verás que después de reimportar el recurso de malla estática correspondiente, todos los actores de todos los niveles que crean instancias de ese recurso de malla estática se actualizarán automáticamente para mostrar la nueva geometría.
Cuándo usar la reimportación de la escena completa
Recomendamos usar la reimportación de la escena completa en la mayoría de los casos. En concreto, tendrás que reimportar la escena completa si:
-
Necesitas incorporar nuevos objetos o materiales de tu escena de origen que no existían antes en Unreal Engine.
-
La disposición de los objetos de la escena en el espacio 3D ha cambiado o los objetos tienen nuevas relaciones de parentesco en la jerarquía de escenas que quieres que se refleje en Unreal Engine.
-
No se pueden reimportar los recursos de forma individual. Puede deberse a que han cambiado demasiados objetos en tu archivo de origen como para trabajar con ellos uno a uno, o a que no sabes qué recursos han cambiado.
Cómo reimportar recursos individuales
Haz clic en la imagen para verla a tamaño completo.
En lugar de reimportar la escena completa de Datasmith, puedes reimportar los recursos de Unreal Engine seleccionados que se crearon mediante el proceso de importación de Datasmith. Por ejemplo, recursos de malla estática, materiales o texturas individuales.
Cuando usas esta opción, ocurre casi exactamente lo mismo que se describe en la sección ## Cambios en la geometría, los materiales y las texturas, pero limitado al recurso que selecciones. Las únicas diferencias son:
-
El recurso siempre se recrea desde cero, incluso si no se ha modificado en la escena de origen. Por ejemplo, en el caso de un recurso de malla estática, la geometría de la malla estática siempre se reconstruye, por lo que se sobrescriben los cambios que hayas realizado en la geometría en Unreal Engine.
-
El recurso de escena de Datasmith no cambia, por lo que no se aplican cambios a la jerarquía de escenas en ningún nivel en el que hayas colocado tu escena, sin importar si resincronizas o no los actores de escena de Datasmith en esos niveles.
-
Como el recurso de escena de Datasmith no cambia, sigue registrando las anulaciones de tu recurso en relación con la última vez que importaste la escena entera. Si restableces las anulaciones del recurso reimportado, este volverá al estado que tenía la última vez que importaste toda la escena de Datasmith.
Cuándo usar la reimportación de recursos individuales
La reimportación de recursos individuales puede ser una buena opción cuando:
-
Quieres introducir cambios en un pequeño número de recursos, pero sabes que la escena de Datasmith en general contiene cambios en otros recursos o en la jerarquía de escenas que no quieres aplicar.
-
Quieres aplicar distintos ajustes de importación de Datasmith a recursos específicos distintos de los que aplicaste al importar la escena completa de Datasmith.
Este proceso de trabajo puede ser especialmente útil para los modelos de CAD que se deben teselar al importarlos, ya que puedes aplicar distintos ajustes de teselado a diferentes partes de la escena de Datasmith. Esto puede ayudarte a optimizar el rendimiento de tu escena controlando el número de triángulos en cada recurso de malla estática. Por ejemplo, podrías importar tu archivo de CAD con ajustes de baja resolución y luego reimportar selectivamente una cantidad menor de recursos de malla estática importantes a resoluciones más altas.
Puedes conseguir lo mismo volviendo a teselar los recursos de malla estática seleccionados en lugar de reimportarlos. A diferencia de la reimportación, al reteselar no se reimporta la geometría del recurso desde el archivo de escena de CAD. Regenera la malla triangular para el recurso de malla estática en función de la última geometría importada usando los nuevos ajustes que proporciones. Para obtener más información, consulta la sección Reteselado de geometría CAD.
Conservación de datos
Tanto si decides reimportar la escena completa de Datasmith como si quieres reimportar recursos individuales, gran parte del trabajo que has hecho en Unreal Engine se conserva en el proceso de reimportación. Esto incluye:
-
Propiedades de las que Datasmith hace un seguimiento como anulaciones. Consulta Anulaciones de Datasmith más abajo.
-
Propiedades exclusivas de Unreal Engine. Consulta Propiedades de Unreal Engine más abajo.
Propiedades de Unreal Engine
No deberías perder nunca los cambios que realices en las propiedades de los recursos y actores que sean específicos de Unreal Engine, es decir, propiedades que Datasmith no importe de tu archivo de origen.
Por ejemplo, imagina que usas Datasmith para importar una escena y luego desactivas la propiedad Proyectar sombras de uno de los actores de malla estática importados en Unreal Editor. Cuando reimportes el recurso de escena de Datasmith y sincronices el actor de escena de Datasmith en tu nivel, la propiedad Proyectar sombras permanecerá desactivada.
Anulaciones de Datasmith
Al reimportar una escena o un recurso de Datasmith, nunca deberías perder ningún cambio que hayas hecho en un recurso o actor de Unreal Engine que Datasmith reconozca como anulación. Las anulaciones incluyen, por ejemplo, qué materiales se asignan a tus recursos de malla estática y actores, o las transformaciones 3D de los actores en tus niveles que se crearon como parte de una escena Datasmith.
Para saber qué cambios se consideran anulaciones, consulta Proceso de importación de Datasmith.
La próxima vez que restablezcas las anulaciones de un recurso o actor después de reimportar una escena de Datasmith, el recurso o actor de Unreal se restablecerá a sus valores posteriores a la reimportación, no a sus valores originales. Por ejemplo:
-
Supón que tu escena contiene un recurso de malla estática llamado «Silla» y, después de importarlo inicialmente con Datasmith, se le asigna un material llamado «Color_00000000».
-
En Unreal Editor, modificas este recurso para usar un nuevo material basado en física llamado «Cuero negro». Datasmith realiza un seguimiento de este cambio como una anulación.
-
Ahora, en tu escena de origen, cambias las propiedades de color de la silla y reimportas el recurso o la escena de Datasmith que la contiene. Al principio, al recurso reimportado se le seguirá asignando el material «Cuero negro» que le asignaste en Unreal Engine.
-
Si restableces las anulaciones en el recurso, este no vuelve a usar el material original «Color_00000000», sino el nuevo recurso de material que generó Datasmith para que coincida con las nuevas propiedades de color de la silla.
Reimportación automática
Puedes configurar Unreal Editor para que supervise las carpetas seleccionadas en busca de recursos que hayan cambiado y reimportar esos recursos automáticamente.
No recomendamos usar este sistema para tus recursos de escena de Datasmith o para los recursos individuales creados por Datasmith. Usa la reimportación automática solo para otros tipos de modelos o recursos que añadas a tu proyecto, como archivos FBX que importes por separado como decorado adicional para tus modelos de Datasmith.
Para obtener más información sobre la configuración de este sistema para contenido que no sea de Datasmith, consulta Reimportación automática.