13 de marzo de 2018
Cómo pasar tus proyectos 3D de Revit a Unreal Engine 4
Contenido:
Trasladar proyectos 3d a VR
Este artículo lo creamos a raíz del pasado webinar “Cómo trasladar tus proyectos 3D a Realidad Virtual“. A lo largo del mismo vamos a ver cómo crear una experiencia de realidad virtual de forma muy rápida y sobre todo cómo podéis crearla a partir de proyectos 3D que ya tengáis desde vuestro software preferido, desde aquel programa que utilicéis principalmente para diseñar, para proyectar, en definitiva, para crear vuestros modelos 3D.
Los principales programas de modelado 3D que se suelen utilizar como son:
- Sketch Up
- Rhinoceros
- Revit
En este ejemplo lo haremos a través de Revit y, aunque nosotros utilicemos este software para crear nuestros modelos 3D, a la hora de crear experiencias de realidad virtual necesitamos pasar por un tipo de software que nos permite evitar esos modelos 3D como mallas. En este caso vamos a utilizar un programa todoterreno que es 3Ds Max, aquel tipo de programa que nos permita evitar mallas editables.
Procedimiento de migración
Como hemos dicho, este ejemplo lo haremos con Revit que es uno de los software que más se utiliza ahora para hacer esos proyectos en 3D en el sector de la arquitectura y la construcción pero cuando exportemos vamos a poder exportar en formato FBX que nos va a permitir ese paso a 3Ds Max. También si utilizamos Sketch Up o Rhinoceros, vamos a poder exportar a FBX o a otros formatos OBJ.
Lo que vamos a hacer hoy es pasar este proyecto que está en Revit. Os voy a contar, a continuación, los pasos que tenemos que hacer para saltar de Revit a una experiencia de Unreal Engine.
1. Consideraciones iniciales
Aunque podríamos exportar directamente desde Revit a Unreal, tenemos que pasar antes por 3D Studio para modificar una serie de parámetros. Por ejemplo, lo que vamos a hacer con este proyecto es exportarlo a FBX, al formato de intercambio que me va a permitir pasar de Revit a 3D Studio. 3D Studio o 3Ds Max va a ser ese software de edición de mallas que vamos a utilizar para hacerle esos ajustes de ese modelo que no nos permite hacer el software como Revit o Rhinoceros o como Sketch Up.
En este caso venimos a “Exportar” y seleccionamos el formato de intercambio FBX. Lo exportamos en el Escritorio y lo vamos a llamar, por ejemplo, “ProyectoVivienda”. Después, guardamos y ya lo tendríamos en el Escritorio en formato FBX.
2. Paso intermedio por 3Ds Max
Ahora vamos a abrir nuestro software 3D Studio y es desde el que vamos a poder hacer esa serie de modificaciones en la mayoría para mapear, para ajustar los materiales para hacer todas esas cosas que no nos va a permitir Revit.
En este caso venimos a “Importar”, selecciono el proyecto que he traído desde Revit, hacemos click en “Ok” y aquí ya tengo el proyecto completo.
Lo primero que tenemos que hacer es comprobar las unidades. Para ello, vamos a “Customize” > “Units Setup” y vamos a trabajar en centímetros que es la unidad que maneja Unreal. Aceptamos. Voy a utilizar, por ejemplo, un cubo para comprobar que las distancias son las adecuadas.
A la hora de pasar a Unreal lo que vamos a hacer es descomponer el modelo en una serie de elementos. Por ejemplo, podemos descomponer en elementos que tenemos repetitivos que puedan ser una especie de bloque y que vamos a exportar una sola vez. Por ejemplo, en el caso de las ventanas que se repiten varias veces, vamos a eliminarlas, a sacarlas del proyecto, después las volveremos a colocar en Unreal y lo mismo vamos a hacer con estas ventanas de aquí y lo mismo con las puertas, las cuales las rotamos. Como hemos dicho antes, estos elementos repetitivos los tenemos que exportar como bloques. No podemos exportar todos a la vez porque sino el programa seguramente colapse. Ahora vamos a ver una serie de procesos que tenemos que hacer con cada uno de los elementos que no podríamos hacer con todos si estuviesen agrupados en un solo elemento.
Una vez que tenemos descompuestos los elementos, lo primero que vamos a hacer va a ser renombrarlos. Por ejemplo, los nombres tan largos que nos trae Revit los vamos a cambiar por muro exterior 01, muro exterior 02 y así sucesivamente con todos los modelos.
Una vez tengamos todos los modelos renombrados, lo que tenemos que hacer es ajustar los mapeados. ¿En qué consiste esto? Lo primero que vamos a hacer es ajustar estas mallas editables. Revit u otro tipo de programa puede que nos traiga una escala extraña ya que al fin y al cabo, al pasar de un software a otro, esas escalas pueden modificarse.
Entonces, lo primero que tenemos que hacer es utilizar la herramienta de “Utilidades” y seleccionar la opción de “Reset XForm”. Si después vamos a los “Modificadores” se nos ha aplicado el cambio.
Colapsamos todos estos modificadores (Botón derecho > Convertir en “Editable Poly”) y la escala de esta malla para aplicarle otros tipos de modificadores de mapeado sería correcta.
Ahora, vamos al UVW Map (mapeado que lo que nos va a permitir es ajustar, por ejemplo, si los ladrillos son más grandes o más pequeños nos va a permitir ajustar esa dimensión). Luego, también para comprobar esa dimensión, lo vamos a hacer en Unreal pero a partir de estos modelos primero tenemos que ajustarlos entonces, en este caso, aplicamos un UVW Map > Seleccionamos Caja y aquí vamos a seleccionar bien 100*100*100 centímetros. Vamos a dejar este ritmo de transformación de mapeado en 100*100*100 centímetros.
Una vez tenemos ajustado el mapeado lo que tenemos que hacer es descomponer esta pieza, las claves de esta pieza para poder hacer que el motor de videojuegos como Unreal Engine pueda calcular la iluminación. Lo que tenemos que hacer es darle ese patrón para que él pueda pintar las sombras sobre cada uno de estos elementos. Lo vamos a hacer seleccionando el modificador “Unwrap UVW”. Yo los tengo aquí, siino se pueden acceder directamente desde la ventana de modificadores, desde este panel desplegable. Venimos a “Unwrap UVW”, selecciono y lo primero que vamos a hacer es cambiar el canal del mapeado al 2 porque el 2 es el que por defecto tiene Unreal. Esto se puede cambiar directamente en Unreal pero mejor si ya lo hemos modificado en 3D Studio. Una vez hemos cambiado el canal de mapeado (este es el canal en el que Unreal va a buscar esas coordenadas para pintar esas texturas), nos venimos a “Open UV Editor” y aquí nos aparece el editor del mapeado. Básicamente, lo que vamos a hacer aquí va a ser desplegar este objeto como si fuese un recortable. Lo vamos a desplegar para que Unreal pueda reconocer esa textura y pueda pintar encima. Seleccionamos la opción de polígonos, seleccionamos todo y, en este caso, vamos a seleccionar Mapping > Flatten Mapping > Ok. Este despliegue que nos hace nos sirve. En este caso, el tema de los mapeados es toda una ciencia para objetos más complejos como, por ejemplo, mobiliarios que es una cosa que nos puede llevar muchísimo más tiempo.
Una vez ya tenemos esto, cerramos y esta pieza estaría lista. Ahora tenemos que hacer lo mismo con el resto de piezas. Esto que puede parecer tedioso, luego hay una serie de trucos, por ejemplo, estos elementos podemos adjuntarlo en un solo grupo y ahora mismo lo tendríamos agrupado. Lo mismo pasa con los elementos exteriores. Entonces, esta tarea que acabamos de realizar se va a simplificar muchísimo y la vamos a hacer mucho más rápido.
Este proceso se haría tantas veces como fuera necesario.
Una de las últimas cosas que tenemos que hacer es ajustar el punto de pivote de las piezas. Para ello selecciono mi elemento, vengo a la opción de “Jerarquía” > “Affect Pivot Only” y voy a mover el punto del pivote al punto 000 de la escena. Esto lo que va a hacer es que nuestro proyecto en 3D Studio a la hora de pasarlo al Unreal, este punto de pivote se va a alinear con el punto 000 de Unreal entonces lo que tenemos que hacer por ejemplo en este grupo de objetos lo movemos, vamos a modificar su punto de pivote, lo movemos al punto 000 y se nos va a alinear en este punto cuando importemos todo en Unreal este punto va a coincidir con el punto 000 de Unreal y se nos va a colocar la casa en esa posición.
Por ejemplo, para elementos que tenemos separados vamos a hacer lo mismo. En este caso vamos a llevarnos el objeto al punto (0,0,0) y con los otros elementos lo mismo.
Este es el workflow ideal que debemos seguir para que todo nuestro proyecto quede correcto y se vea con la mejor calidad posible.
3. Exportando de 3Ds Max a Unreal Engine
Ahora lo que tenemos que hacer es exportar el proyecto. Como hemos estado trabajando en centímetros, vamos a ajustar en las unidades que nos las convierta a centímetros.
El siguiente paso es crear un nuevo proyecto de unreal. Creamos una carpeta donde importo ese proyecto.
Después, tenemos que ajustar una serie de parámetros:
- Desactivamos las colisiones
- Desactivamos que nos genere los Lightmap UVs
- No importar ni los materiales ni las texturas porque los podemos crear directamente en Unreal
Seleccionamos sólo los elementos de arquitectura y los elementos repetitivos que vamos a introducir después. Lo que vamos a hacer para cada objeto es añadirle un material. En el caso del techo, que tiene dos partes, vamos a añadirle dos tipos de materiales, entre ellos el aluminio. Tenemos que hacer lo mismo sucesivamente con el resto de piezas.
No aplico directamente los materiales en la escena porque si tengo que arrastrar un objeto nuevo no tendría los materiales.
Por último, añadimos los materiales más repetitivos (las puertas y ventanas) y los vamos recolocando. Para colocarlos en su sitio podemos utilizar una vista superior.
Para darle más calidad a nuestra escena, es calcular la iluminación para ajustar los modelos nuevos. Para ello, venimos a “Build” y seleccionamos una calidad media.
En resumen, hemos partido desde Revit con sus familias, con sus ventanas. Después, hemos pasado por 3D Studio para poder ajustar elementos que no podemos hacer desde Revit para poder llegar finalmente al modelo en Unreal Engine.
¿Y si quiero continuar aprendiendo?
Técnicas y procedimientos tan útiles como éste y muchos más, podrás aprenderlos en nuestro Máster de Realidad Virtual Online para Arquitectura e Ingeniería. Ya sabes, si quieres convertirte en un experto VR y presentar tus proyectos de una manera más vistosa, ¡éste es tu máster!