Materiales en Revit

Materiales en Revit

Materiales en Revit

Nuevos Materiales PBR

Physically Based Rendering – Novedad en Revit 2019

Actualmente en Revit conviven dos tipos de materiales, los materiales “legacy” con el sistema tradicional de representación y los nuevos materiales “PBR” (Physically-Based Render).

Hasta ahora en la API de programación de Revit prácticamente no se tenía control a ninguna de los aspectos de los materiales, (hasta hace poco de hecho ni se podía acceder). Dado que cada día los visualizadores en tiempo real (Lumion y Twimotion principalmente) están teniendo más importancia Revit está mejorando los materiales 3D. Actualmente tenemos materiales dentro de Revit que funcionan de la manera “tradicional” y de la manera “física”.

Los materiales PBR, intentan emular el funcionamiento de la reflexión de los materiales según su funcionamiento real.

Los materiales PBR son cada día más frecuentes, y deben su uso principalmente a la industria de los videojuegos que ha estandarizado este tipo de materiales. Hasta hace poco la potencia de procesamiento no permitía que los materiales se calcularan “físicamente” por lo que se realizan artificios para que el resultado fuera similar a la realidad, pero sin realizar un modelo real.

Motores Unbiased // Biased.

Los motores de renderizados tradicionalmente se han dividido en dos grandes grupos los motores “unbiased” o “biased” Los motores unbiased son aquellos motores que utilizan algoritmos físicamente “correctos” (unbiased == correcto). Por ejemplo, Maxwell Render es un motor unbiased, es un motor que utiliza un algoritmo que simula de manera bastante precisa cómo funciona la luz real. Con este tipo de motores se consigue un mayor realismo a costo principalmente de tiempos de proceso muy altos. Vray por ejemplo, tradicionalmente, es utiliza un algoritmo “biased” “sesgado” “o con error” en el sentido que utiliza técnicas para que el resultado final sea muy similar a la realidad. Si veis imágenes de Vray veréis que tiene un gran realismo y la mayoría de las infografías que vemos están hechas con un motor “biased”. Que se utilice una aproximación u otro no quiere decir que el resultado no sea excelente en cualquiera de ellas. Los motores “unbiased” “physically-based son los motores más interesantes para el sector de la construcción por varios motivos, el primero al estar basado en características físicas de los materiales son más cercanos a los materiales que trabajamos nosotros y nos permiten trabajar con iluminaciones y conceptos similares a la fotografía tradicional (iso, velocidad). Así por ejemplo, en Maxwell Render podemos insertar luces con sus correspondientes ficheros ies y tendremos una iluminación real, esta iluminación real nos servirá igualmente para poder realizar cálculos de iluminancia y otros cálculos técnicos utilizando esos materiales “físicos”

Los algoritmos de cálculo, pueden ser y de hecho distintos en cada uno de los motores, existen motores de “trazado de rayo” raytracer que simular de manera muy precisa, pero existen otros métodos (radiosidad, Montecarlo, quasi Montecarlo…) que lo que procuran es configurar algoritmos que nos permitan realizar esas simulaciones.

Por ejemplo, Octane Render, dentro de su plugin incorpora 4 motores de render distintos, y resulta muy sencillo para explicar los distintos tipos de motores de render:

  • Direct Lighting – Ambient Occlusion, es un motor de render “biased” con error y que no está basado en emular la realidad física, procura un resultado aparente aceptable. La oclusión ambiental, hace que en las zonas “cóncavas” se produzcan más sombras y parece más realista.
  • Direct Lighting – Diffuse, es parecido al anterior, pero realiza una “radiosidad” sobre el canal difuso. Es decir, si tenemos una pared blanca junto a un jardín verde, la pared blanca tendrá un cierto tono verde de la reflexión de la hierba. Es mucho mas correcto y los resultados más realistas.
  • Path tracing, es un trazado de rayos, cuyo algoritmo se basa en Montercarlo. Los rayos salen desde las fuentes de luz y van rebotando hasta llegar a la cámara. En cada rebote se va perdiendo energía y dependiendo del material se tendrá un comportamiento u otro.
  • PMC, (Population Montecarlo) es un “algoritmo mutable”, en este algoritmo el número de rayos varia y donde necesita más rayos el algoritmo añade más muestreos. Es como 4 veces más lento que el anterior.

Los motores de render tradicionalmente utilizaban la CPU para calcular, el procesador del ordenador, cuando los algoritmos intentaban “emular” el resultado las cpu tradicionales funcionaban bien. Los algoritmos más modernos basan casi todos sus cálculos en rayos o energía que se van “repartiendo”. Como son multitud de rayos, cuantos más hilos de procesamiento tengamos mejor, vamos a poder trabajar distintos rayos en distintos núcleos de la cpu. Los cálculos a realizar son “sencillos” pero son “muchos” rayos… ahí es donde surgen los nuevos motores de renderizado basados en GPU, en los procesadores de la tarjeta gráfica. Las tarjetas gráficas incorporan muchos pequeños núcleos, no tan potentes como los de la cpu pero si capaces de realizar muchas pequeñas operaciones en paralelo… Consiguen que los motores que antes tardaban muchísimo en calcular aprovechen el procesamiento en paralelo y conseguir tiempos de renderizado mucho más rápidos.

Después cada renderizador tiene sus métodos de conseguir resultados aparentes, por ejemplo, Lumion utiliza muchos “sampling” de la misma imagen y los mezcla, consiguiendo resultados decentes en muy poco tiempo. Twinmotion utiliza una parte del algoritmo de Unreal Engine, un motor de videojuegos con gran calidad. Hasta ahora utiliza la parte “sencilla” del motor, pero está implementando la parte de trazado de rayos.

https://www.youtube.com/watch?v=v9JIzUCK_OA (minuto 1:12 raytracing en tiempo real!)

Materiales en Revit 2019

Desde gestionar tenemos acceso a la pestaña al icono de los materiales.

Recordad desde 1 tenemos acceso a la librería de materiales y desde 2 al “explorador de activos”

Cualquier material en Revit, está basado en distintas “pestañas” que vamos añadiendo (Aspecto, Físico, Térmico y las pestañas de Identidad y representación gráfica 2D)

En el explorador de aspectos tenemos varias “librerías” de aspectos. De estos aspectos muchos tienen un símbolo de admiración

Cuando veamos un aspecto con este símbolo estamos ante un material “legacy” o tradicional.

¡Los aspectos que más nos interesan son los nuevos! Ya que los tradicionales la idea es que vayan desapareciendo en favor de los nuevos.

Los aspectos son como familias de sistema, por lo que necesitaremos duplicar uno existente de partida.

¡Existen aspectos que tienen igual nombre, pero unos son PBR y otros no!

Vamos a partir de un PBR y vamos a ver las características de estos nuevos materiales.

El primer ítem de información es el que tiene el nombre del aspecto, los nombres de los aspectos en las bibliotecas pueden estar duplicados, pero en el proyecto no. Cuando añadir dos aspectos con el mismo nombre en el proyecto se renombran automáticamente (si no son el mismo).

El siguiente grupo se corresponde con “parámetros” que es una de las pestañas más importantes.

Color, va a definir o bien el color base de nuestro material o bien una imagen que se corresponde con el canal de “difusa” el canal que da el color principal a nuestro material.

En el triángulo de la derecha obtenemos el desplegable para elegir la imagen.

Aparece el editor de texturas estándar (se repite en el resto de las configuraciones)

Arriba tenemos el nombre de la textura que estamos cargando y el “brillo” propio que va a tener la textura al cargar por defecto 0 es negro y 100 es blanco total, habrá que coger valores cercanos a 50 para que mantenga un aspecto similar al que tiene. Podemos invertir la imagen, en el canal de difusa no tiene mucho sentido, pero en los canales que son de relieve si ya que las hendiduras cambiaran hacia dentro o hacia afuera.

Con vincular transformaciones, conseguimos que todos los cambios en las texturas se hagan a la vez (si la textura queremos que mida 6×6 todas las texturas asociadas se cambiaran)

La posición nos sirve para elegir desde donde queremos que se comience a ver nuestra textura (imaginar una bandera o similar que queremos que empiece de una esquina… desde aquí podemos cambiarlo al igual que la rotación.

Con escala decimos cuanto va a medir nuestra textura en la realidad, son unidades reales…

Por último, con repetir le decimos si nuestra textura se va a repetir (tipo “azulejos”) o solo queremos una textura.

Dentro de parámetros tenemos el canal de “reflectancia” que nos sirve para indicar cuanto queremos que refleje nuestro material, todos los materiales van a tener cierto efecto “fresnel” que es el efecto de la reflexión por ejemplo de un cristal en un escaparate, cuanto miramos lateralmente funciona casi como un espejo mientras que cuando nos ponemos perpendiculares a el casi no refleja y funciona como un cristal. Podemos utilizar un valor o bien cargar un mapa

Junto al canal de reflectancia vamos a encontrar la “rugosidad”, independiente del comportamiento que tengamos en la reflectancia la rugosidad del material hace que se produzca una reflexión más o menos perfecta.

La reflexión con una pequeña rugosidad esta cercana a la reflexión de un espejo mientras que cuanta más rugosidad tenga el material menos reflexión vamos a conseguir.

Un material con mucha rugosidad apenas refleja, mientras que uno sin rugosidad funciona como un espejo (con su reflectancia propia…)

Ambos parámetros podemos modificarlos bien con un deslizador bien con una imagen.

Hay muchas textura profesionales, que poseen un canal de “rugosidad” roughness. Esa textura debería ir en “aspereza”.

El siguiente grupo que tenemos es el de “Translucidez” que nos define si nuestro material es translucido, pensar en materiales como la cera o como el metacrilato de color o incluso la carne humana que hasta cierto grosor permite que la luz penetre y obtengamos un color distinto.

La zona junto a la llama es translucida hasta cierto grosor.

El parámetro de profundidad nos indica hasta dónde llega esa “transparencia” y con el “grosor” el color de esta transparencia. Los motores más complejos usan materiales “subsurface scattering

Los materiales de este tipo están basados en el comportamiento real de la luz al atravesar un medio y suelen ser los materiales más pesados a la hora de renderizar. En un motor como Autodesk Raytracer suelen ser los materiales que más “grano” aportan a la imagen. Existen soluciones para evitar ese grano ????

El siguiente grupo de parámetros regulan la “emisividad”, materiales que pueden emitir luz. Los controles son muy sencillos, un control para la luminancia y otro para el color.

La emisividad no está pensada para crear iluminación, para eso están las luces. Esta pensado más para materiales opalescentes, filtro de luces tipos las pantallas de las lámparas. Por ejemplo, pensar una lampará formada por una pantalla cilíndrica de papel, la luz está en el interior con su bombilla, el material de la pantalla tendrá cierta iluminación de color distinta a la bombilla. Para este tipo de materiales está pensada la emisividad.

El siguiente grupo de parámetros sirve para el “relieve”, en otros motores de render lo vais a ver como bump mapping o como mapas de normales. Sirve para emular el relieve de los materiales, hay renderizadores que poseen un canal de “desplazamiento” que modifica la geometría para incluso proyectar sombras, el mapa de relieve lo que hace es “simular” esta profundidad. Por ejemplo, llagueados de ladrillos, vetas de madera… Usualmente se utilizan de dos maneras, como relieve simple o como normales. El mapa de relieve va a tener en cuenta la profundidad del material para reflejar o no. Si se usa un mapa de normales, tiene en cuenta la orientación de la normal de la superficie, es más real (por ejemplo, una gota que refleja según la dirección en la que incide la luz).

En la textura tendremos que especificar si es una “normal” o un mapa de alturas.

Sin relieve

Con relieve, mucho más realista.

El grupo de “Corte” es el canal que podemos encontrar en otros motores como opacidad, aplicando una textura lo que sea “negro” será transparente y lo que sea blanco totalmente opaco. Para visualizar “vallados”

En el último grupo tenemos los controles de los “controles avanzados de resaltes” son los controles que se utilizan principalmente para metales “bruñidos” o cepillados donde los reflejos forman formas ovaladas debido a las microsuperficies. La anisotropía controla como de elípticos son los reflejos y la orientación la de estos reflejos.

Ejemplo material “anisotrópico”

Los materiales de tipo cristal también se han modificado y tiene propiedades también basadas en su comportamiento físico

El índice de refracción de nuestro material lo podemos buscar (https://pixelandpoly.com/ior.html)

Los materiales tradicionales lo mejor es dejarlo de usar en lo posible, van a seguir durante mucho tiempo ya que hay mucho contenido con dichos materiales. Como criterio lo ideal es ir configurando nuestra biblioteca de materiales PBR porque son los que a partir de ahora va a desarrollar Autodesk. Estos materiales son más fáciles de “traducir” al resto de motores (tipo Lumion – Twinmotion)

Texturas comerciales.

Hemos visto cómo podemos crear nuestros materiales desde los aspectos que trae Revit, pero en muchos casos necesitaremos “aspectos” personalizados. Para ellos hemos visto que necesitamos las distintas “texturas” que componen el aspecto: difusa, normales, relieve… Existen casas comerciales que venden estas texturas especialmente para infoarquitectura. Unas de las mejores texturas que podemos encontrar son las de la marca comercial: Arroway

https://www.arroway-textures.ch/

Las texturas de esta casa comercial traen el tamaño real de la textura y los porcentajes aproximados que hay que darle a cada canal para conseguir el material:

Materiales desde imágenes.

En muchos casos necesitaremos crearnos nuestros propios materiales, hay software que nos permiten realizarnos nuestros propios materiales (shadermap, AwesomeBump…)

Motores de Render

Autodesk Raytracer

Hasta hace pocas versiones, Revit incluía Mental Ray. Renderizador muy utilizado en la industria cinematográfica, pero algo obsoleto ya. Mental Ray fue adquirido por nvidia y desde entonces Autodesk está desarrollando su propio motor de renderizado. Autodesk Raytracer es un motor de renderizado “moderno” unbiased, dentro de Revit tiene muy pocas opciones. Dejándonos prácticamente únicamente la configuración de la calidad como único elemento a modificar. Dentro de las calidades tenemos la opción de configurar manualmente los “pases” que queremos… a más pases más calidad.

La otra opción es renderizar en la nube, que tiene una exposición “avanzada”…

Los inconvenientes de Autodesk Raytracer, son por un lado que ejecutado en local es un renderizado muy lento y en la nube es un servicio de pago que tenemos que tener contratado.

La inversión de tiempo-dinero con el resultado obtenido no merece la pena, por lo que en mi opinión debemos recurrir a motores externos para tener mejor resultado tanto en tiempo invertido como en calidad.

Vray

Vray es el estándar en la industria de la infografía junto con 3DS Studio Max, Revit puede vincular los archivos en 3D Max pero para crear manejar todas la potencia de 3ds Max en muchos casos hay que romper esa vinculación (editar mallas por ejemplo) lo que no lo hace un flujo muy efectivo. Chaos saco el plugin específico para Revit.

Maxwell Render

Probablemente el motor de render más cercano a cómo funciona la iluminación en la vida real. Es casi un simulador de iluminación. Por el contrario, es el más lento en la mayoría de los escenarios posible, especialmente en interiores.

Octane Render

Muy versátil en tanto que dentro de una sola aplicación como vimos anteriormente tenemos 4 motores de render con distintas calidades que nos pueden servir para hacer desde un borrador de una vista hasta una vista definitiva.

Representación en tiempo casi real

Lumion

La comunicación con Revit es bastante buena, la calidad de los interiores es cada vez mejor y la de los exteriores es bastante decente desde hace tiempo.

Twimotion

La comunicación es muy similar a la usada por Lumion y la forma de trabajar es muy similar también, a día de hoy la calidad que ofrece es inferior. Lumion basa su forma de trabajar en el antialiasing que ofrecen las tarjetas en 3D, haciendo un “supersampling” y mejorando la imagen con una mezcla de ellas. Twinmotion trabaja muy distinto utiliza la tecnología de Unreal Engine. Unreal Engine tiene un motor con mucha calidad en tiempo real, Lumion necesita el sampleado para conseguir la calidad por lo que Twinmotion tiene más posibilidad de mejorar, Unreal posee varias “iluminación globales” y una opción de “bakear” la iluminación. Estas opciones no están aún en Twinmotion, en el avance de Twinmotion se supone que van a implementar el trazado de rayos en tiempo real, eso supondrá un salto de calidad significativo.

 

Realidad Virtual

La realidad cada día se utiliza más dentro del sector, hasta el método que mejores resultada proporcionaba era el paso a través de algún motor de videojuegos tipo unreal o unity. En ambos casos, aunque se puede realizar el proceso de “retexturizar” y encajar las texturas a su escala es manual y bastante tedioso. El resultado es muy bueno y se consigue recorridos virtuales cercanos a la realidad.

VR Enscape

Enscape es un motor de renderizado que trabaja también con la GPU (tarjeta grafica) y consigue resultados de calidad aceptable en tiempos muy pequeños. Nos permite realizar imágenes estáticas, panoramas 360, videos, realidad virtual y visores “standalone”. Para videos por la calidad y los efectos que nos ofrece Lumion es inmejorable no lo vamos a ver.

Render Image – Imágenes estáticas

Export – Permite exporta como un ejecutable (también tiene Realidad Virtual)

Create View – Clona la vista que tengamos en Enscape en Revit

Render Panorama – Guarda los 360 para ver en el móvil por ejemplo

Settings – Configuración de las opciones

VR headset – Si tenemos conectado un casco de realidad virtual permite que se vea en la realidad virtual

Configuración:

Settings General

Rendering Style, por si queremos hacer un render tipo “corcho blanco” maqueta

Architectural Two point corrige las verticales

Depth of Field, profundidad de campo

Field of view, apertura visual campo visual

Motion blur, desenfoque de movimiento… mucho crea una estela poco agradable

Rendering Quality, calidad de renderizado

Automatic resolution, cambia la resolución para mantener la calidad

Settings – Image

Auto contraste, cambia el contraster automáticamente por ejemplo, al pasar de un exterior a un interior.

Temperatura de color, subo o baja la temperatura de color de la imagen más alto más frio, mas bajo más cálido.

Bloom, crear una especie de brillo en la imagen.

Brillo ambiental, sube o baja el brillo general de la imagen

Lens flare, crear destello en los brillos

Viñeteado, subo o baja el efecto de viñeteado (esquinas más oscuras) simulando efecto de foto

Aberraciones cromáticas, son las aberraciones de las lentes en las camaras (colores rojo-separados en la visión periférica) da una especie de desenfoque

Settings – Atmosphere

Cielo desde archivo, permite mostrar una imagen hdr o similar de fondo.

Settings – Advanced

Settings – Capture

Twinmotion

Twinmotion también permite la representación en tiempo real y nos permite ver datos del modelo BIM

Tags:
, ,
Jose Gemez Jimenez
josegemez@gmail.com

José Gémez, nacido en Córdoba en 1977, arquitecto experto en BIM y coordinador y formador del Área BIM de Animum Creativity Advanced School. Concretamente en el Máster - BIM Manager con Autodesk Revit (Título Propio de la Universidad San Pablo CEU). Actualmente doctorando en BIM en la Universidad de Málaga, con la tesis "Tecnología BIM aplicada a la construcción"



A %d blogueros les gusta esto: