Saltar al contenido

Carta RAL para Unreal Engine

26 marzo, 2020

Esta es parte de un proyecto de Agosto de 2018 que me he decidido a compartir. En aquel proyecto podía cambiar en Realidad Virtual la pintura de pilonas, impostas, estructura y barreras de un viaducto de estructura metálico.

Puesto que la carta industrial más utilizada con mis clientes de estructuras metálicas es la RAL me decidí a programar un “Blutility” que creara todos los “assets” a partir de la tabla de colores, tabla que no es facilitada por el propietario del standard. Sin embargo, en la red se encuentra de todo y dí con un CSV con un montón de datos, entre ellos el RGB. A mi parecer los datos son fiables puesto que los he comparado de forma aleatoria con un ojo educado en color y coinciden.

RAL

Las “Blutilities” son “Blueprints” para usar en el editor, hoy ya superadas por nuevas clases y “widgets” como son las Editor Utility Widgets y Editor Utility Blueprints.

Quien le baste con la colección de materiales, he de decir que son MIC, Material Instance Constants, basados todos en un mismo padre, otro Material Instance, basado a su vez en un Material Base. El material base tiene cuatro parámetros: Color (Color lineal, Vector 3), Dieléctrico o Metálico, Especularidad y Brillante o Mate (estos tres son escalares). Así, todos los materiales de la carta son creados por defecto con un aspecto ciertamente brillante, pero cambiando cualquiera de sus parámetros podemos obtener acabados diferentes. Ni que decir tiene que los parámetros obedecen al sistema PBR de diseño de materiales. Si no se necesita más, se pueden borrar estos “assets”: BP_Creador_RAL, DS_RAL y DT_RAL_Standard.

A quien le apetezca toquetear el Blueprint lo primero que ha de hacer es habilitar la plugin que posibilita los nodos que uso:

Plugin que hay que activar

Sin esta activación no funciona. Si lo quieres probar, elimina todos los materiales con nombre M_RALXXXX, menos el Base y la Instancia de referencia (sin ellos no funciona), arrastra BP_Creador_RAL a la escena y tendrás un botón en la pestaña Details que dice Crear Carta. En unos instantes tenemos toda la carta RAL si todo funciona como se espera.

Desde un punto de vista de lógica, la Blueprint es bastante sencilla. Lo principal es tener una Data Structure que defina una Data Table cargada con los datos de un CSV preparado ad-hoc. Iterando por toda la tabla componemos el nombre y obtenemos el valor RGB que transformamos a espacio lineal. Inmediatamente vamos creando Materiales Instancia a partir del Material Instancia base e inyectando los cuatro parámetros. Tenía previsto poder ajustar los parámetros Metal y Roughness desde Details y que pudieran ser variables, pero ya se andará.

Blueprint

Quisiera hacer otra versión haciendo uso de lo que he comentado antes, Editor Utility Widgets y Editor Utility Blueprints, para incorporar una funcionalidad que cree sólo el RAL que necesito desde un menú, pero no he tenido tiempo de aprender a hacerlo. Lo que es seguro es que hay que activar otro plugin:

Editor scripting utilities

El contenido del ZIP ha de ponerse como cualquier otro conjunto de assets en la carpeta Content de cualquier proyecto. La descarga, aquí:

Carta RAL para Unreal Engine

Recorridos Virtuales en 2020, ¿aún?

20 diciembre, 2019

No me cabe uno de esos titulares de los que soy tan amigo, lo resumo como lo he puesto. Pero esta entrada obedece a una reflexión confirmada a su vez por otra entrada en LinkeIn del amigo José Corraliza Miranda, Aecom: los recorridos virtuales nodo a nodo basados en renders 360 siguen siendo una de las herramientas más demandadas de presentación, por increíble que parezca.

PanoTour44nodos

Galimatías monumental de 44 equirectangulares en PanoTourPro. Hay que prever todos los movimientos posibles que una visita puede ofrecer.

Da igual estar preparados de sobra para ofrecer interacción plena basada en motores de render en tiempo real de altísima calidad como Unreal Engine o Unity, da lo mismo si agilizas el proceso mediante soluciones más o menos “oneclick” del estilo de Enscape, Twinmotion o Lumion, da igual si ofreces VR con más o menos interacción, da lo mismo si prescribes soluciones de VR colaborativa para evaluación temprana como InsiteVR, Iris Prospect o The Wild: si el cliente final no tiene soporte corporativo en forma de máquinas con prestaciones gráficas elevadas, si aún no le seduce llevar unas Quest a su cliente para presentar las propuestas o si tener reuniones en el metaverso para decidir sobre modelos en desarrollo no forma parte del horizonte de su mirada, no hay nada que hacer.

El caso es que el número de recorridos virtuales que han sido despachados en este estudio desde 2015, siendo un concepto y una tecnología más viejos que un bosque, no ha dejado de crecer. Se ha constituido como la herramienta fundamental de visualización, bastante más allá del video, de los renders tradicionales y muy por encima de interactivos de render en tiempo real.

Revit nodes

Esquema de la visita en Revit. Una cámara por cada panorama. Una familia de detalle sirve de guía y planificación. ¿Era para esto eso del BIM?

Del render tradicional es que no quiero saber nada, pese a que 3dsMax y Vray Next siguen entre mis herramientas, no son para nada ya las habituales. ¿Ni siquiera para obtener los render 360 para los recorridos? Ni siquiera.

El nivel de calidad exigido queda garantizado de largo tirando los panoramas desde sesiones de Enscape y Revit. PanotourPro, que quedó congelado en esta version 2.5.14 tras la desaparición de Kolor, sigue siendo la herramienta de autoría, y el resultado sigue siendo hospedado en buckets S3 estáticos en AWS. Un poco de Photoshop para la Splash y el esquema de navegación y poco más.

¿Se factura?. Sí. ¿Es lo que más te gusta hacer?. No. Me motivan otros retos, pero quizá llevado por la riada, el hype, de VR desde 2015, del tiempo real, etc., me voy dando cuenta 4 años después que el mercado no está preparado aún para este tipo de soluciones: las grandes corporaciones, conozco más o menos a fondo un par de ellas, se mueven como dinosaurios, paso muy lento, justificando cada movimiento. En algunas ocasiones determinadas se logra realizar algún desarrollo fuera de lo habitual, pero las pocas. Las empresas pequeñas aún peor, no hay cultura más allá del socorrido render, en un 90% de los casos ni la más remota idea de qué hay detrás de la cúpula donde vivió Truman su show gran parte de su vida, esperando a que por fin encuentren todos la puerta que les saque de la caverna del mito. Con estos tiro la toalla, porque encima no pagan lo que vale, y llevo 30 años tirando renders.

ManageUploads

Enscape hace un buen trabajo tirando panoramas, aunque necesita hacerlo por lotes. Ya está apuntado el consejo para la próxima versión.

Con lo cual, de 2019 puedo decir que sí, que he despachado recorridos virtuales 360 no sólo en España: Portugal, Reino Unido, Grecia, Israel, Francia, Alemania, Sudáfrica y Australia. No está nada mal y bien que me alegro, pero me gustaría que hubieran sido productos más avanzados a los que he dedicado mucho I+D+i, mucho tiempo, mucho dinero, mucha ilusión y mucho esfuerzo. A final de año queda un sabor agridulce. Me permito terminar con este verso libre heptasílabo que no viene a cuento.

¡Felices Fiestas a tí,

lector perdido que has

perseverado hasta aquí,

heróico o aburrido!

 

Oculus Link (beta)

30 noviembre, 2019

¿Quién no ha oído hablar a estas alturas de Oculus Link? Si aún queda algún rezagado, vamos con una pequeña descripción sobre qué es para poder continuar contando mi opinión personal acerca de dónde me / nos puede llevar desde un punto de vista teórico y a dónde desde un punto de vista eminentemente práctico con un proyecto real, en herramientas reales, que a fin de cuentas es lo que vale.

IMG_20191128_134551

Las ya maduras Oculus Rift a la izquierda, las Oculus Quest a la derecha

Como la palabra “Link” indica, es un enlace físico entre unas gafas Oculus Quest y un ordenador mediante un cable USB algo especial. Por ahora el cable oficial aún no se despacha, pero Oculus sugiere un modelo en concreto:

IMG_20191128_134936

Anker Powerline USB-C to USB3.0 – Model: A8167011 (3 m.)

Como todos los productos de Oculus, las Quest están diseñadas y fabricadas con mucho detalle, gusto y atención. Son ligeras, equilibradas, muy atractivas al tacto y sus controllers son los que mejor caen en las manos de todos los que he probado. Cierta tendencia a abrirse la tapa de la pila, que va sujeta por pestaña e imán y si estás echando una partida de Beat Saber, se corre el riesgo de que salga disparada. Se puede comprar aparte el estuche donde queda todo muy bien recogido y listo para viajar, como si fuera un neceser.

IMG_20191128_135047

No son actualmente las que mejor resolución tienen del mercado (no son unas Varjo VR-2 ni unas Pimax 8, vale), pero superan significativamente a las Rift. Como es lógico mejoran en “screen door effect”, “god rays” y mura.

IMG_20191128_135100

Muy compacto y bonito el estuche de las Quest

Muchos se preguntarán qué sentido tiene conectar unas Quest, que son unas gafas autónomas con seguimiento “inside-out”, luego no precisan de sensores externos como sus predecesoras Rift, mediante un cable. Aparentemente ninguno, pero por razones comerciales Facebook decidió que Quest pudiera ejecutar cualquier juego, tanto los nativos de Quest como los de Rift y Rift-S. Los juegos de Quest se ejecutan haciendo uso del potencial gráfico de las mismas, que es el de un móvil de gama más o menos alta: Snapdragon y Vulkan. Cualquier desarrollo dirigido a Quest, por ejemplo desde UnrealEngine 4, debe comenzarse prácticamente desde cero, y pensando en los polígonos que puede mover, los shaders que puede calcular y los efectos que puede simular: lo típico de móvil, “Mobile / Tablet y Scalable 2D or 3D”. En resumen una APK con toda la configuración y riesgo de una compilación de Android.

OculusLink07

Estos que aquí enlazo, Elara Systems, saben “un puñao”.

Pero ahora pongámonos en el día a día, y más concretamente en nuestro mundo BIM + Tiempo real como herramientas / metodologías / objetivos fundamentales.  En un estudio como el mío se “despachan” decenas de laboratorios cada mes en todo el mundo desde Portugal hasta Australia pasando por Sudáfrica o Israel. Con ese ritmo uno no puede plantearse hacer APKs a menos que logre un flujo de trabajo muy definido y afinado y siempre y cuando la actitud del cliente sea proactiva al uso de Realidad Virtual de forma cotidiana.

Podría entonces plantearse la compilación de experiencias VR desde UE4 para PC haciendo uso de Oculus Link. Más fácil y más rápido, es la gráfica del PC la que se encarga del streaming a las Quest. Pero es que resulta que hay herramientas muy válidas para evaluación de modelos en fases tempranas (y no tan tempranas) como es la combinación de Revit + Enscape.

Veamos cómo fue el proceso tras recibir el cable. Sin demasiadas esperanzas arranco la aplicación de Oculus, la cual, tras actualizarse (hacía un tiempo que no desarrollaba nada sobre Oculus) muestra esta nueva pantalla:

OculusLink01

Emoción. Conecto el cable y… Lo detecta. El de esta pantalla será el propio de Oculus, algo más largo que el de Anker.

OculusLink02

Oculus Link reside en el PC y en las gafas, por lo que hay que actualizar software. Se precisó de un reinicio manual ya que tras la descarga, las Quest se quedaron un poco como durmiendo el sueño de los justos.

OculusLink03

Reiniciadas, la App de Oculus en el PC nos muestra esta novísima pantalla donde podemos seleccionar de las gafas conectadas las que queramos utilizar:

OculusLink05

Evidentemente lo que quiero es probar las Quest:

OculusLink04

Por cierto, el mensaje de que el ordenador no cumple los requisitos mínimos tiene una explicación: desde Oculus no conciben que alguien pueda usar un ordenador con 2 Xeon Gold para VR.

 

Y llega la hora de la verdad. Probar lo más difícil, nada de juegos. Abierta una sesión de Revit con un laboratorio que no existe porque es un lab show room con unos productos nuevos, lanzo Enscape, y ya en la pantalla, activo VR. Aunque las gafas son usadas en diversas estancias, parece que reconocen dónde han estado antes sin pedir de nuevo trazar el “Guardián” (algo, por otro lado, en lo que se tarda menos de un minuto). Únicamente y a veces hay que recalibrar la altura del suelo, como sí que sucedió en esta ocasión. Pues aquí está el resultado. Del modelo a experienciarlo en VR en menos de 20 segundos, un poco torpe yo, pues con la emoción dejé que el cable se enredara en una silla y notaba los tirones.

El resultado de este viaje es el siguiente: del mismo modo que vamos a clientes a hacer sesiones en tiempo real con Revit donde modelamos a la carta la automatización de su laboratorio quiero terminar las sesiones dándoles la oportunidad de poder experienciarlo en VR sin tener que llevar más trastos que un portátil potente y unas Quest, algo que cabe como equipaje de cabina en cualquier vuelo. Ni sensores ni más historias. Lo que no quita que se pueda y se deba tener unas gafas de gama alta como las mencionadas previamente para explorar productos mucho más refinados y maduros como los que se pueden obtener desde UE4.

Termino comentando mi esperanza de que se haga realidad lo que John Carmack dijo en la última Oculus Connect: “no descartamos un Oculus Link inhalámbrico en 2020”. ¡Toma!.

 

Realidad Virtual en procesos creativos

16 noviembre, 2019

Entrada corta. La Realidad Virtual la hemos comenzado a ver en el sector del entretenimiento, donde ha ido cogiendo fuerza con mayor o menor fortuna, de acuerdo a precios, requerimientos y espacios.

Posteriormente, casi simultáneamente, y gracias a la fuerza que los motores de render de videojuegos han aportado, hemos visto cómo en el entorno profesional y empresarial de toda clase de sectores se ha hecho un hueco casi más importante que en el del entretenimiento.

Y lo que se veía venir, que podamos usar herramientas profesionales desde el otro lado, embebidos en una experiencia VR, es ya un hecho.

El otro día llego a mi estudio y me encuentro a Claudia Rivera Arranz modelando en Maya, a modo de test, un asset con el que llevaba un par de días.

-¿Estás cómoda modelando así?

+No sólo es que esté cómoda, creo que estoy modelando mucho más rápido, estoy más inmersa, más concentrada, con más libertad creativa (suena a Tilt Brush).

-¿Cuánto tiempo llevas así, y cuánto tiempo crees que podrías estar, así digo de pie?

+No sé cuánto tiempo llevo, pero como modelo más rápido, estaré menos tiempo de pie del que estaría sentada modelando en pantalla.

Al rato, como una media hora, la veo sentada en el suelo, el asset prácticamente terminado. Y ella muy contenta por la experiencia. Terminado el trabajo un rato más tarde le pregunto.

-¿Qué pros y qué contras le encuentras a este cambio de paradigma en el modelado?

+Los principales pros son dos: la abstracción tiene como consecuencia mayor concentración, la ausencia del marco de una pantalla aporta mayor libertad creativa, me puedo mover alrededor del objeto, incluso meterme dentro y realizar detalles que de otra forma no sería posible. Los contras van ligados a las gafas principalmente en el sentido de la ergonomía y la calidad: en primer lugar, estas HTC Vive, por alguna razón, dan calor o sensación de calor. En segundo lugar, no están equilibradas y se acaban haciendo notar sobre la cara al cabo de una hora. Un peso en la parte posterior, quizá llevar parte de la electrónica a una caja detrás sería una solución para equilibrar las gafas y que una no acabe con mala experiencia.

La última versión de Oculus Home tiene muy mejorada la visión de la pantalla del ordenador dentro de las propias gafas. Hice una prueba, tratar de hacer algo en Revit. Como es lógico, fue una tarea imposible, no está preparado para ello y seguimos confinados a un espacio 2D que muestra objetos 3D con mayor o menor suerte. Pero ¿podríamos imaginar una interfaz para Revit al estilo del Unreal Engine VR Editor?

UEVREditor

Más. ¿La podríamos imaginar en multiescala libre, trabajando a escala 1:1, dentro del edificio, o a otra cualquiera, como un “hacedor”? Y aún más: ¿colaborativa, al estilo InsiteVR?

Sólo pedimos, como conclusión, dos cosas:

1.- sea para ZBrush, Substance Painter, Revit, o lo que toque, que la interfaz esté diseñada para estar sentado, que es la forma natural de trabajar, y el que quiera trabajar de pie, que también lo pueda hacer.

2.- HMD’s equilibrados, ligeros y frescos. Y como mínimo con una resolución como la de las HP Reverb o ya puestos, unas Pimax 8K…

Herramientas VR para toma temprana de decisiones

1 octubre, 2019

 

A finales de 2016 evaluaba una aplicación de desarrollo incipiente como era entonces Iris Prospect e Iris Scope. La segunda basada en recorridos virtuales apoyados en imágenes equirectangulares 360, lo que llevo resolviendo por otros caminos desde hace ya 4 años. La interesante para mí era la primera:

 

Está claro que no permite elaboraciones mucho más cuidadas en interfaz y calidad como este desarrollo realizado en UnrealStudio en verano de 2018:

 

Permitía Prospect en cambio, y permite, montar de forma rápida una revisión en VR de un proyecto, sin demasiado esfuerzo. Más allá de formatos de entrada, de calidades finales, de integración en herramientas cotidianas o de UX, la intención hace casi 3 años estaba ya clara de por dónde podían ir los tiros.

La madurez de Iris VR es patente, como empresa sólida y solvente. No se ha esfumado como tantas otras en este plazo, al contrario, ha seguido desarrollando y mejorando ahora su producto con dos líneas que me han gustado especialmente.

La primera un porting a Oculus Quest. La segunda la integración en Navisworks. El binomio no es baladí. A nadie se nos escapa que tiempo real y VR ya se mira desde el mundo empresarial como soluciones que van más alla del ¡WOW! inicial. Aunque les sigue costando. Pero la actitud es ya otra.

Prospect4OculusQuest

 

Por mi trabajo cotidiano estoy muy acostumbrado a realizar muchos proyectos pequeños, pero muy rápidamente y sobre los que tomar decisiones prontas. Modelos en Revit con multitud de conjuntos y opciones de diseño, cuyas combinaciones dan como resultado muchas propuestas diferentes.

La idea de usar UnrealStudio y hacer modelos interactivos de alta calidad se desestima en estos casos, quedan más del lado del marketing para epatar en presentaciones a gerencia, congresos o ferias, tomando ahora el protagonismo soluciones que antes no me gustaban, como Enscape, InsiteVR, Prospect, Lumion o Twinmotion, las denominadas OneClick“. En España tenemos soluciones fantásticas, como la de VTLab: VTPlatform, apoyada, como otras que no merecen que las olvide (disculpas), en Forge, la API de Autodesk para desarrollos web íntimamente relacionados con Revit.

En todas ellas la unión con BIM es fundamental. Pero lo que más me llama la atención para tenerlas en consideración en la toma temprana de decisiones es:

1.- integración con herramienta, en mi caso Revit.

2.- colaborativa: el hecho de poder integrar a varias personas en lugares diferentes en un encuentro VR (o no) sobre diversos dispositivos (HMD’s y pantallas). 

3.- contenido alojado en nube.

4.- “portings” a HMD’s inside out y autónomos (como Oculus Quest, quizá Vive Cosmos con Wireless, no parece que Vive Focus).

5.- anotaciones por parte de los usuarios.

La suma de todas ellas y unas Quest hace que las reuniones puedan tener lugar en el espacio virtual constituido por el gemelo digital, cualesquiera que sean los integrantes de la misma, donde quiera que estén presencialmente. El cliente final no tiene aún porqué disponer de unas gafas de gama alta y el precio de unas Quest es lo suficientemente bajo  como para que en el mundo empresarial no sea un disparate ponerlas a disposición del cliente final, darle diez minutos de formación y finalmente enseñarle a entrar en el proyecto en las reuniones que se convoquen. O viajar a la reunión con el cliente con las Quest en la cabina del avión y no tener que hacer un setup complicado (outside-in) en sus instalaciones.

Mi experiencia con InsiteVR ha sido más que satisfactoria, tanto en Rift, Vive, Quest o pantalla. Han sido corregidas algunas carencias iniciales, pero cumple con las 5 premisas indicadas. La calidad es insuficiente, no alcanza a Enscape, Lumion o Twinmotion ni de lejos, pero es suficiente para comparecer virtualmente un grupo que va a tomar decisiones. Me faltan algunas cosas, como cambiar de opción de diseño, pero tenemos capas como categorías, pudiéndolas activar / desactivar.

Hemos tenido sesiones conjuntas con VtLab y José María Catena, saliendo de ellas todos satisfechos. Aquí un ejemplo aunque es una sesión donde estaba solo.

*La calidad de video tan mala es debido a que fue capturado de un streaming desde la Quest a un Ipad. Supongo que lo habrán mejorado.

La razón por la que me he animado a escribir hoy este artículo, cuando pensaba haber escrito otro es que aunque no haya vuelto a probar Prospect y del cual estoy esperando autorización para testar la versión Quest, es la plugin que tiene para Navisworks. Uno podría pensar que la toma de decisiones tempranas se basa sólo en la valoración común de razones espaciales, estéticas, funcionales o simplemente de cumplimiento de pliegos, pero el hecho de poder vivenciar de forma plural un modelo de coordinación de forma instantánea a escala 1:1 me pareció lo suficientemente significativa como para dejar en un segundo plano las conclusiones de la reciente Oculus Connect 6.

La detección de colisiones es algo que encontraba yo con frecuencia cuando ilustraba de forma artística planificaciones de obra 4D (de Gantt a render). Sucedía entonces una llamada de teléfono para advertir a constructora u oficina técnica de insconsitencias en el modelo o en MSProject.

L07

4d “artístico” para ilustrar un avance de obra de un centro penitenciario

Todos sabemos hoy que con Navis esto ya no puede suceder, pero la posibilidad de hacerlo a escala 1:1 de forma inmersiva me parece sencillamente maravilloso. Otra cosa es la adopción que se haga de ello en el mercado, en la oficina técnica, en la obra. Hemos de acostumbrarnos a ser pacientes.

Prospect Navisworks 1:1

navisflowgifshort

 

He de volver a probar Prospect en situaciones reales, y especialmente la versión para Quest.

Qué podemos esperar del Raytracing en Unreal Engine 4.22

1 abril, 2019

5 minutos de lectura

Editado: esta entrada llega un día tarde. Ya ha sido publicada la versión 4.22

Hablo de lo que podemos saber de la prerelease.

Al fin!

Cada nueva versión oficial de Unreal Engine viene precedida por 2, 3 y hasta 4 ‘previews’. Y cuando digo oficial me refiero a la lanzada por Epic Games desde el ‘laucher’, porque al ser un editor y motor de render de código abierto y residir sus cientos de miles, o millones, de líneas de código en Github cualquiera que se atreva puede personalizarlo a su gusto como sabemos de muchas versiones ‘alternativas’.

Las ‘previews’ de las que hablo permiten depurar errores de última hora, poniéndolas en manos de decenas de miles de entusiastas que reportan incidencias que serán corregidas en los cuarteles de Epic. Por supuesto estas versiones nunca deben utilizarse en producción, por mucha ilusión que nos haga probar las decenas de novedades que trae cada nueva edición.

Ofertón del año pasado, se las quitaban de las manos

Pero la 4.22 va a ser un caso especial. Cuando en el GDC2018 Nvidia presentó la primera gráfica con ‘raytracing’ en tiempo real, fue como si se encontrara el Santo Grial perdido hace 2000 años. Y se presentó sobre cinemáticas calculadas en tiempo real en UE4, lo que hacía presagiar aquello que en una o dos semanas tendremos de forma oficial. Entonces las demos se realizaron sobre carísimas estaciones equipadas con 4 gráficas Tesla GV100. Hoy el RT (raytracing, no retweet) que tenemos a nuestra disposición funciona sobre una sola RTX2080Ti, algo que buscaban en Epic Games para hacerlo mucho más accesible.

Hace volar a Enscape, a ver a UnrealEngine

Ya vamos (íbamos) por la ‘preview’ 7, algo que al menos a mi me lleva a pensar que la final va a ser lanzada evitando en lo posible cualquier ‘bug’, especialmente en lo que a ‘raytracing’ se refiere.

Ha habido que cambiar esta captura, la de antes era de la preview

El RT, aunque ya válido para cualquier producción, aún es un WIP, un ‘early access’. Está habilitado para iluminación global (preferentemente primer rebote), sombras difusas de cualquier emisor, ‘ambient oclussion’, reflexiones, translucencias e IBL basado en imágenes HDR, entre otras, dejando a un lado ‘lightmaps’, ‘sphere and cube reflection captures’, ‘planar reflections’ y ‘ambient oclussion’ entre otros efectos en ‘screen space’.

Brutal, la demo “A Hands-on Look at Using Ray Tracing in Games with UE 4.22 | GDC 2019”

Lo mejor de todo es que es híbrido, por lo que podemos elegir el camino tradicional para unos efectos y raytracing para otros.

En la 4.22 tenemos en realidad dos motores de RT:

1.- RT hibridado con los efectos raster: el que hay que usar.

2.- Path tracer, un RT puro, ‘unbiased’ usado como referencia para aprobar internamente los desarrollos del primero. Es una herramienta de uso interno.

Reflejos nítidos por fin

La principal ventaja de raytracing frente técnicas consolidadas es que para el usuario es mucho más sencillo de implementar: no ha de preocuparse de añadir ‘reflection probes’ para las reflexiones, y estas, al no ser en ‘screen space’ serán de calidad excelente, tampoco habría de preocuparse del tedioso ‘unwrapping’, ni de afinar con decenas de valores en el cálculo de iluminación, las sombras serán físicamente perfectas, y los resultados no se verán afectados por imperfecciones en el modelado. Todo esto, claro, en función del balance entre pases rasterizados y calculados por RT. Lo mejor de todo es la naturaleza híbrida de la propuesta.

Lo que sí

 

Lo que no

Para hacer uso de RT en la 4.22 hay dos premisas ineludibles: Windows 10 1809 y una gráfica RTX, sea Quadro o GeForce.

Requisitos

Este último punto, que es obvio, conlleva a una reflexión a la hora de determinar el objeto de nuestro desarrollo, es decir, si el cliente dispone o está dispuesto a disponer de una máquina con RTX o no. Decisión que por otro lado, y con el paso del tiempo, perderá importancia en la medida que la computación en tiempo real en ‘server side’ sea cada vez más común: Pixel Streaming, GForce Now, RTX Server Line, 5G, Stadia, bla, bla, bla.

Por otro lado también pienso si el cliente notará o no la diferencia de una escena en RT o no, pero eso es otra historia. Mi visión se basa más en un B2B que en B2C. Son públicos distintos.

Variables de consola, muchas

Actualmente la mayoría de las funcionalidades de RT se controlan desde la consola de comandos por medio de un nutrido grupo de variables, algo que se habilitará con una interfaz de usuario en la 4.23. Hay otras funciones que se controlan desde los propios actores, como algunas de ellas desde el PostProcess Volume.

Importancia añadida del Postprocess Volume

Mientras el cálculo se haga sobre RTX local, hemos de tener en cuenta que algunos procesos RT son muy rápidos, incluso más que los tradicionales (sombras, AO), y otros no (reflexiones de más de un rebote, GI de muchas luces, interiores, reflejos muy difusos, pese al Denoiser). De ahí que la posibilidad de hibridarlos o repartirlos entre RT y procesos tradicionales es una opción excelente pero que habrá que distribuir mediante un ‘profiling’ bien segmentado.

 

Importante decidir qué y qué no será calculado en RT

 

A través del PostPro y las variables podremos buscar un balance adecuado para cada ocasión

 

Las zonas que delimitan reflexiones nítidas de reflexiones totalmente difusas tienen un coste significativo. Hay variables para mitigar esta pérdida de FPS

Ojo con la autoría de materiales complejos. Sobre todo mejor tirar de un Ubershader o padre súper paramétrico y materiales instanciados para reducir drawcalls. A ver Substance Designer… A ver las importaciones de Datasmith y sus réplicas de Vray.

Conclusiones para la 4.22

Conviene mencionar que pese a haber sido habilitadas en versiones precedentes las luces rectangulares no han tenido una funcionalidad plena hasta esta 4.22, momento en el que al disponer de RT, su semejanza con la realidad es ya total. Además se ha añadido la función ‘barn door’, que determina la apertura del cono de iluminación, como en los focos de iluminación de estudio.

Muy buena implementación de las luces rectangulares

En fin, que a falta de la publicación final, que es de esperar que sea esta semana (ya ha sido, 16:00 del 2 de Abril), esto es todo lo que puedo decir de una versión que supondrá un antes y un después.

¿Cuál es el límite razonable de calidad gráfica para objetos BIM en 2019?

23 marzo, 2019

Recientemente se generó de forma espontánea y desde LinkedIn un #debate interesante sobre el nivel de detalle que “deberían” tener los objetos #BIM de acuerdo a la potencia gráfica de las estaciones de trabajo más o menos comunes hoy día. Este debate surgió a partir de la publicación de un post acompañado de unas imágenes extraordinarias, de renders de uso comercial, de donde comentarios propios le sugerían al autor la posibilidad de realizar objetos BIM a partir de modelos muy detallados destinados a renders comerciales como las imágenes mencionadas.

Estos modelos quedan definidos por topologías con muchos polígonos, sin mapas de curvatura, ni de normales, ni de “ambient occlusion”, tampoco “height maps”, es decir, polígonos a manta y a pelo. Ideales para renders de muy alta calidad, lo que hoy llaman “off-line”.

Se mencionaba en el debate que bien esos modelos tan detallados, dados algunos ejemplos de eficiencia a la hora de servir desde la nube modelos muy detallados a dispositivos de poca capacidad gráfica, como los smartphones, siempre desde un punto de vista comparativo con estaciones de trabajo, podrían servir como modelos BIM, al seguir ese esquema cliente-servidor, o de virtualización de escritorios.

Mi opinión es diferente. Quizá al estar centrada en #Revit, donde sé que tenemos hasta tres niveles de detalle y vistas 2D para los objetos BIM, tengo más que entendido que esos mismos objetos, repetidos cientos o miles de veces en un modelo, hacen que si no están optimizados al máximo para el uso BIM que se le vaya a dar, con sus niveles de detalle, con un modelado relativamente simplificado, no destinado a un render de alta calidad, harán del modelo un ladrillo que conducirá al usuario al hastío y la decepción en el uso habitual.

Actualmente no creo, ni con una gráfica GV100, que se puedan utilizar topologías para render comercial en un modelo BIM. Ponía en el debate ejemplos del mundo de los videojuegos, con activos representados en varios niveles de detalle, con materiales que a través de mapas de normales y otros simulan relieves y topologías complejas, incluso con impostores o “billboards”. No parece que estas técnicas hayan sido replicadas en el mundo BIM, sea cual sea el programa, luego queda lejos la idea de representar con buena calidad comercial renders desde estas aplicaciones. Es cierto que Revit hace una gestión interna de la complejidad de la escena digamos que singular y eficaz, pero no es raro encontrarme aún así modelos que se mueven torpemente.

Hace ya un tiempo publiqué un post donde mencionaba la sorpresa que me llevé al descargar un objeto desde un repositorio tipo Bimobject, Bimetica o Bim&Co y comprobar que tenía sólo un nivel de detalle y que además era un modelo importado a la brava desde #Solidworks, o #Catia o tal: inasumible en metodología BIM, fuera cual fuera el programa de destino.

Al contrario, hoy mismo, comprobaba como un fabricante de mobiliario de oficina bastante conocido tiene sus objetos BIM modelados en primer lugar con las herramientas de modelado de Revit, con un conjunto de metadatos relativamente pequeño y racional, abierto y con materiales nominados bajo el prefijo del fabricante para poder ser fácilmente mapeados en cualquier automatización. Bravo por ellos. Que sí, que no servirán para render de alta calidad, muy detallados, muy “BRICK”, pero servirán para su destino, metodología BIM “for the masses’’, democratizada.

En mi metodología tengo una serie de librerías replicadas según la herramienta: unas en Revit, para su destino, metodología BIM, para objetivos y usos racionales, sus réplicas en #3dsMax, para renders offline de calidad on #VrayNext, y por último otras réplicas como activos en #UnrealEngine para #RealidadVirtual, tiempo real y render instantáneo. El hilo conductor son una serie de automatizaciones en diversos lenguajes de programación y estructuras de datos tabuladas así como diccionarios para mapeo de datos entre ellas. Hasta ahora es lo que mejor me ha ido y del carro que no me bajaré hasta que tenga en cualquier “workstation” metodología BIM, render de calidad, tiempo real y realidad virtual en la misma plataforma. Lo que por otro lado tampoco me seduce. #Enscape da una calidad bastante aceptable dentro de Revit para la mayoría de las situaciones de planificación y diseño con la mayoría de los clientes.