Usando Unreal Datasmith con Sketchup Pro

Workflow o modo de trabajo que debemos seguir al exportar un modelo de Sketchup a Unreal Engine 4 con Datasmith.

UE4 escena Importada de Sketchup con Datasmith
¡Haz clic para puntuar esta entrada!
(Votos: 2 Promedio: 5)

Esta página describe cómo Datasmith importa escenas de Trimble SketchUp Pro en Unreal Editor. 

Datasmith sigue el proceso básico descrito en la Descripción general de Datasmith, pero agrega un comportamiento especial que es específico de SketchUp. Si planea usar Datasmith para importar escenas de SketchUp en Unreal Editor esta página puede ayudarlo a comprender cómo se traduce su escena y cómo puede trabajar con los resultados en Unreal Editor.

Imagen de un modelo de Sketchup
Imagen de un modelo de Sketchup
El mismo modelo visualizado en Unreal Engine 4 una vez configurado e iluminado
El mismo modelo visualizado en Unreal Engine 4 una vez configurado e iluminado

SketchUp Workflow

Datasmith utiliza un flujo de trabajo de complemento de exportación para SketchUp. Esto significa que para obtener su contenido de SketchUp en Unreal usando Datasmith, necesita:

  1. Instalar un complemento para SketchUp, osea un simple programa que debemos instalar, este nos permite exportar de Sketchup una geometria 3d o escena completa en formato .udatasmith para luego dentro de Unreal poder importarla con Datasmith. Epic lanza una nueva versión del complemento Unreal Datasmith Exporter para SketchUp con cada nueva versión de Unreal Engine. Si cambia a una versión diferente de Unreal Engine, asegúrese de descargar e instalar la versión correspondiente del complemento. La herramienta para exportar de SK Pro a Unreal puede descargarse desde aqui: Datasmith Exporter. Asegúrese de descargar la version que coincida con la version de su motor de Unreal, tenga en cuenta que este programa funciona con Sketchup Pro 2017-2018 y 2019 por el momento.
  2. Exporte su contenido de SketchUp a un archivo .udatasmith. Si desconoce como hacerlo mire el video: Sketchup exportar con Datasmith. 
  3. Habilite el Importador> Datasmith Importer Plugin para su proyecto, si aún no está instalado, esto dentro de UNREAL, para ello tiene que ir a Edit – Plugins y en el cuadro que se abre buscar a la izquierda importers y a la derecha tildar datasmith en enable.
  4. Use el importador Datasmith disponible en la barra de herramientas del Editor de Unreal para importar su archivo .udatasmith si no sabe como vea por favor los videos en este mismo sitio. Unreal Studio 4

Para leer más sobre otros tipos de flujos de trabajo de Datasmith, consulte Software y tipos de archivos compatibles con Datasmith.

Convertir Geometría en Mallas Estáticas

Datasmith divide su geometría SketchUp en mallas estáticas combinando todas las caras de polígono conectadas que están en el mismo componente o grupo, en una sola malla estática. Conocer esto puede ayudarte a influir en como Unreal creará las mallas estáticas.

Si sus mallas estáticas en Unreal son muy grandes, puede tener problemas para lograr buenos resultados al generar el mapa de luces estáticas o estacionarias para su escena. Unreal crea un mapa de textura que muestra la textura iluminada, ósea muestra como se ve el objeto en base al calculo de las luces en la escena, lo plasma en una textura y la aplica al objeto, de este modo ganamos en tiempo de render.

Las mallas grandes requieren texturas de mapa de luz grandes para asegurarse de que cada parte del modelo tenga una cantidad adecuada de espacio de textura para registrar su luz y sombra, cuanto mas grande mas pesada para lograr equiparar calidad. 

Puede intentar aumentar la resolución del mapa de luz en las mallas estáticas grandes, pero esto también aumenta el tiempo de calculo a la hora de generarse la malla y los requisitos de memoria de tiempo de ejecución. 

Dependiendo de la forma en que se distribuyan los UV de su mapa de luz, es posible que no pueda generar buenos resultados. Si esto sucede, puede intentar dividir sus geometrías grandes en múltiples componentes o capas en SketchUp para hacer que las mallas estáticas sean más fáciles de manejar en Unreal.

Osea puede separar 1 objeto complejo formado por un componente con mucha geometria, en varios componentes mas pequeños. Imaginemos una edificio, podemos separarlo en muros PB, muros 1 piso, muros 2 piso , muros 3 piso , muros 4 piso y terraza, en vez de muros edificio.

Instancia

Cuando Datasmith detecta varias copias del mismo componente en su escena de SketchUp, solo crea un conjunto de activos de malla estática para ese componente y coloca múltiples instancias de esas mallas estáticas en la escena. 

Osea en realidad hace lo mismo que SK, genera un solo componente que luego réplica en el modelo. Esto suele ser mejor para los requisitos de memoria de tiempo de ejecución y el rendimiento de su proyecto, además de facilitar la administración de la cantidad de activos de malla estática en su navegador de contenido.

Recordemos que el motor de Unreal siempre intenta optimizar todo ya que esta pensado para los juegos, y la idea es lograr una buena calidad con el menor peso y esfuerzo posible.

Siempre que sea posible, recomendamos aprovechar esto haciendo que los elementos que se repiten en su escena (como ventanas, puertas o sillas) se conviertan en componentes re utilizables en SketchUp antes de ser exportados.

Componentes Faceme

Datasmith exporta componentes faceme de su escena de SketchUp como mallas estáticas planas y coloca instancias de estas mallas estáticas planas en el nivel.

La orientación de cada malla estática en el nivel se basa en el punto de vista de la cámara SketchUp en el momento de exportar su escena a udatasmith. 

Cuando la cámara en Unreal Engine está en la misma ubicación en el nivel que la cámara original en SketchUp, la malla estática plana aparece de la misma manera que la cartelera giratoria en SketchUp, osea tanto la cámara como el componente se ven bien. 

Sin embargo, a medida que mueve la cámara en Unreal Engine, la rotación de la malla estática no se actualiza para coincidir con el punto de vista actual de la cámara como lo hace en SketchUp, osea el componente faceme en unreal se comporta como un simple plano que no sigue a la cámara.

Orientacion de las caras

SketchUp es muy permisivo sobre la dirección de orientación de su geometría (caras poligonales o triangulares). En Sketchup Pro puede crear geometría de «un solo lado», es decir, geometría sin grosor, y verla desde ambos lados; Incluso puede aplicar diferentes materiales a las diferentes caras de cada plano.

Unreal Engine utiliza un enfoque diferente: supone que toda la geometría está modelada con un grosor y que las caras solo son visibles desde su parte positiva. Cualquier cara invertida que esté frente a la cámara no serea representada o mostrada, por ello es sumamente importante que el modelo de Sketchup tenga sus caras correctamente alineadas antes de exportar el modelo a unreal. 

Para lograr el mejor rendimiento posible en tiempo de ejecución, siempre elimina o invierte cualquier cara o triángulo orientados hacia atrás para evitar gastar ciclos de GPU que no son realmente visibles.

Recomendamos siempre modelar sus objetos 3D con un grosor, para que funcionen como se espera en Unreal. Sin embargo, si usa geometría de un solo lado en SketchUp, Datasmith hace todo lo posible para respetar su intención en la forma en que asigna materiales y direcciones de orientación a los triángulos en sus mallas estáticas:

  • Si solo un lado de su superficie en SketchUp tiene un material asignado, esa superficie se elige para la dirección del triángulo o cara en Unreal.
  • De lo contrario, Datasmith elige el lado frontal de la superficie en SketchUp como la dirección de orientación en Unreal.
  • Si tiene un material asignado a ambos lados, Datasmith importa solo el material del lado frontal.

De manera predeterminada, esto significa que los triángulos o caras en geometría de un solo lado no aparecerán en su escena Unreal cuando los mire desde la parte posterior. Además, el lado que mira hacia atrás no proyecta sombras.

Modelo de Sketchup con caras simples, compare con imagen en Unreal Engine 4.
Modelo de Sketchup con caras simples, compare con imagen en Unreal Engine 4.
Modelo de Unreal Engine 4, luego de importar archivo Sketchup con caras simples.
Modelo de Unreal Engine 4, luego de importar archivo Sketchup con caras simples.

En el ejemplo anterior, los lados y la parte inferior de cada cuadro están orientados hacia afuera, por eso no los vemos desde esta posicion. 

La imagen de la izquierda tiene un solo material asignado a su lado exterior y las caras invertidas el material por defecto que genera Sketchup, pero estan invertidas y por eso no se muestran. 

La caja del centro tiene dos materiales asignados, marrón y azul pero las caras invertidas no son representadas por unreal por eso no vemos el color marrón. 

La caja de a derecha tiene un material rojo asignado a todo el grupo, y un cara individual un material diferente asignado específicamente. Las caras invertidas tampoco son vistas desde este punto de camara.

Debemos tener en cuenta que las cajas y sus materiales fueron correctamente exportados, solo con no son visibles desde el punto de cámara en el cual nos encontramos, solo las caras que sean positivas a nuestro punto de vista serán representadas.

La mejor manera de lidiar con esto es arreglarlo en SketchUp, dando a sus objetos un grosor (espesor). Sin embargo, si desea solucionar el problema en Unreal, hay otras opciones como por ejemplo configurar el material como 2 sided, osea que tiene 2 lados visibles. 

Materiales de SketchUp

Para cada tipo diferente de superficie en su escena de SketchUp, Datasmith crea un nuevo Material en Unreal y lo coloca en la carpeta Materiales junto a su Escena Datasmith. 

El objetivo de estos Materiales es respetar la forma en que ha configurado las superficies en SketchUp, al tiempo que expone algunas propiedades adicionales que lo ayudan a aprovechar el renderizador basado en la física de Unreal.

Editor de materiales de Unreal Engine mostrando un material de Sketchup que se genera como una instancia de material de un material maestro.
Editor de materiales de Unreal Engine 4 mostrando un material de Sketchup que se genera como una instancia de material de un material maestro.

Para modificar un material:

  1. Haga doble clic en el Navegador de contenido. O seleccione un Actor en su Nivel (static mesh) que use el Material que desea modificar y haga doble clic en el Material en el panel Detalles .
  2. Abrirás el Editor de materiales que se muestra arriba, donde puedes modificar estos parámetros en la sección Grupos de parámetros en la parte superior del panel Detalles . También puede modificar otros parámetros integrados expuestos por el renderizador Unreal.
  3. Para anular el valor predeterminado de cualquier propiedad, primero marque la casilla a la izquierda de su nombre para activar la propiedad en su Material. Luego, establezca el valor que desea que use la propiedad.

Cada uno de estos activos es una instancia de material, cuyo padre es el material SketchUpMaster integrado en el complemento Datasmith. 

Para ver en vídeo todo esto, le recomiendo seguir el curso dictado gratuitamente en este mismo sitio siguiendo los video tutoriales subidos a Youtube. Lista de reproducción del curso gratuito de Unreal Engine 4.

Puede abrir este Material principal para ver cómo cada una de las propiedades expuestas en la Instancia de material están conectadas entre sí en el gráfico de Material. Recomendamos ver vídeo 27 y 28 del curso Unreal Engine 4.

Colores e imágenes de textura

Por defecto, los Materiales importados mantienen las texturas o colores que tienen en SketchUp. Puede anular esto para hacer que su material use un color sólido o una textura.

  • Active la opción Color o la opción Usar imagen de textura . (Si no ve la opción Color en absoluto, desactive primero la opción Usar imagen de textura ).
  • Para usar un color sólido, configure los valores de color RGB para producir el color que desee. 

    Tenga en cuenta que el canal A no se utiliza: la combinación alfa se controla mediante una opción de opacidad separada.
  • Si elige usar una imagen de textura, verá una propiedad de Textura , que puede configurar para hacer referencia al activo de textura que desea usar. (Si desea utilizar una textura que aún no está en su Proyecto Unreal, arrástrela y suéltela en su Navegador de contenido para importarla en su Proyecto).

    También puede usar el control Escala de textura si necesita cambiar la forma en que la textura se coloca en mosaico en la superficie. El valor R controla la escala horizontal (el eje U en el espacio UV), y el valor G controla la escala vertical (el eje V en el espacio UV). Los valores B y A no se utilizan. Sin embargo yo le recomiendo que traiga la textura correctamente mapeada desde sketchup antes de importarla a unreal.
Editor de materiales de Unreal Engine 4, configurando color solido a instancia de material maestro.
Editor de materiales de Unreal Engine 4, configurando color solido a instancia de material maestro.

Si elige usar una imagen de textura, verá una propiedad de Textura , que puede configurar para hacer referencia al activo de textura que desea usar. (Si desea utilizar una textura que aún no está en su Proyecto Unreal, arrástrela y suéltela en su Navegador de contenido para importarla en su Proyecto), recomendamos que esto lo haga dentro de la carpeta Texturas y que de no existir la cree, por motivos de orden y organización.

Cargando una textura en lugar de un color dentro de Unreal Engine 4.
Cargando una textura en lugar de un color dentro de Unreal Engine 4.

También puede usar el control Escala de textura si necesita cambiar la forma en que la textura se coloca en mosaico en la superficie. El valor R controla la escala horizontal (el eje U en el espacio UV), y el valor G controla la escala vertical (el eje V en el espacio UV). Los valores B y A no se utilizan.

Controlar la repiticion o tamaño de la textura con R y G en Unreal Engine 4.
Controlar la repiticion o tamaño de la textura con R y G en Unreal Engine 4.

El efecto de cambiar alguno de los valores.

Otros parámetros que podemos modificar en la instancia del material maestro de Unreal Engine 4.
Otros parámetros que podemos modificar en la instancia del material maestro de Unreal Engine 4.

Opacidad y modos de mezcla

Ya sea que use un color sólido o un mapa de textura para el color base de su Material, puede usar el control de Opacidad para determinar la cantidad de fondo que puede ver a través de la Malla Estática.

De forma predeterminada, si su material en SketchUp tiene un valor de opacidad inferior al 100%, ese valor debería aparecer correctamente en su Material en Unreal.

Si desea dar una configuración de Opacidad a un Material previamente  no transparente en Unreal, debe cambiar el modo de fusión del Material. En la sección General , expanda el grupo Invalidaciones de propiedades de material , marque la opción Modo de fusión y configure su valor en Translúcido .

Modificar opacidad de un Material en UE4 que no fue configurado así en Sketchup.
Modificar opacidad de un Material en UE4 que no fue configurado así en Sketchup.

Propiedades extendidas de UE

Por defecto, todos los materiales importados se configuran como no metálicos, con un valor de Rugosidad equilibrado de 0.5. Sin embargo, probablemente encontrará que ajustar estos valores para diferentes Materiales es una manera fácil de aumentar el realismo de la representación de su escena en Unreal. Encontrará estos valores en las propiedades del grupo extendido UE :

Modificar valores extendidos en UE4 para dar mas realismo al material.
Modificar valores extendidos en UE4 para dar mas realismo al material.
  • Para cualquier objeto que esté hecho de metal, seleccione la opción Metálica . Esto hace una sutil diferencia en la forma en que el color base o la textura afectan la luz entrante que llega a la superficie.
Material original importado de Sketchup sin la propiedad metálico.
Material original importado de Sketchup sin la propiedad metálico.
Material modificado en Unreal Engine 4 como metálico.
Material modificado en Unreal Engine 4 como metálico.
  • Si la superficie de su objeto es particularmente mate o brillante, marque la opción Rugosidad (roughness) y aumente o disminuya el valor. El valor de roughness tiene que ver con cuan perfecta o pulida es la superficie de su material, 0 (perfectamente pulido) y 1 (poroso, con imperfecciones, la luz es dispersa en todos sentidos).
Rugosidad o roughness del material configurada en 0.5.
Rugosidad o roughness del material configurada en 0.5.
Rugosidad o roughness del material configurada en 0.05.
Rugosidad o roughness del material configurada en 0.05.
  • Cuanto mas cercanas a cero, mas perfectas y pulidas. Los rayos de luz rebotan casi en forma perfecta (no se dispersan).
  • Si diferentes partes de su objeto necesitan tener un brillo diferente, puede optar por usar un Mapa de rugosidad: una imagen de textura en escala de grises en la que colorea las partes que desea que sean mate en blanco (dispersen la luz) y las partes que desea que sean brillantes en negro.
  • Para obtener más información sobre cómo interactúan los valores de Rugosidad y Metálico para crear superficies brillantes, consulte también Creación de materiales brillantes.
  • Además, puede configurar mapas normales para sus materiales importados. Estos le dan al renderizador pistas sobre los detalles de la superficie a pequeña escala de su geometría:
UE4 Material sin un mapa de normales.
UE4 Material sin un mapa de normales.
UE4 mismo material pero con un mapa de normales aplicado, observe el detalle en la superficie.
UE4 mismo material pero con un mapa de normales aplicado, observe el detalle en la superficie.

Puede generar mapas normales y mapas de rugosidad en software de creación de imágenes 2D como Adobe Photoshop. En algunos casos, como con la textura que se muestra arriba, puede basar esos mapas normales y mapas de rugosidad en las texturas de color base de su material.

Otro programa muy útil para generar los diferentes mapas que podemos necesitar como Specular, Roughness, Normal, Bump, etc. en base a un solo mapa de color que nos guste es CrazyBump.

Solo SketchUp Pro

El complemento exportador de Datasmith actualmente solo funciona con SketchUp Pro. No es compatible con SketchUp Free ni con SketchUp Make descontinuado.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *