Reporte de revisión de técnicas de renderizado por GPU contemporáneas
Fecha liberación:
12/11/2021
Fuente:
Adobe Inc. (2021, 3 agosto). Substance 3D Documentation – Substance 3D Stager. Substance 3D Stager. Recuperado 5 de noviembre de 2021, de https://substance3d.adobe.com/documentation/sg
Autodesk Inc. [Autodesk]. (2020, 25 marzo). 3ds Max 2021 Rendering and Viewport Features [Vídeo]. YouTube. https://www.youtube.com/watch?v=kDtz_lpWi4g
Autodesk Inc. (2021a, mayo 27). GPU Raytracing. VRED Products 2021 | Autodesk Knowledge Network. Recuperado 10 de noviembre de 2021, de https://knowledge.autodesk.com/support/vred-products/learn-explore/caas/CloudHelp/cloudhelp/2021/ENU/VRED/files/Rendering/VRED-Rendering-GPU-Raytracing-html-html.html
Autodesk Inc. (2018, 11 diciembre). To Use ActiveShade Rendering. 3ds Max 2019 | Autodesk Knowledge Network. Recuperado 5 de noviembre de 2021, de https://knowledge.autodesk.com/support/3ds-max/learn-explore/caas/CloudHelp/cloudhelp/2019/ENU/3DSMax-Rendering/files/GUID-06FF191B-B740-40C8-BD6A-CE07AF380304-htm.html
Autodesk Inc. (2021, 7 octubre). NVIDIA Omniverse: Modern Collaborative Workflows [Webinar]. NVIDIA Omniverse: Modern Collaborative Workflows, San Rafael, California. https://events-platform.autodesk.com/event/autodesk-university-2021/planning/UGxhbm5pbmdfNjcwMzU4
Blender Foundation. (2019, 29 julio). Accelerating Cycles using NVIDIA RTX. Blender Developers Blog. Recuperado 5 de noviembre de 2021, de https://code.blender.org/2019/07/accelerating-cycles-using-nvidia-rtx/
Chaos Software OOD. (2021a, febrero 6). Getting Started – Chaos Vantage – Chaos Help. Getting Started – Chaos Vantage – Chaos Help. Recuperado 12 de noviembre de 2021, de https://docs.chaos.com/display/LAV/Getting+Started
Chaos Software OOD. (2021b, marzo 31). Live Webinar: Real-time with Chaos Vantage | Chaos. MX 2 Real-Time with Chaos Vantage Webinar. Recuperado 12 de noviembre de 2021, de https://www.chaosgroup.com/vantage/webinar-march-2021
Epic Games, Inc. (s. f.). Path Tracer. Unreal Engine Documentation. Recuperado 8 de noviembre de 2021, de https://docs.unrealengine.com/4.27/en-US/RenderingAndGraphics/RayTracing/PathTracer/
Epic Games, Inc. (s. f.-a). Ray Tracing Features Settings. Unreal Engine Documentation. Recuperado 8 de noviembre de 2021, de https://docs.unrealengine.com/4.27/en-US/RenderingAndGraphics/RayTracing/RayTracingSettings/
Epic Games, Inc. (s. f.). Real-Time Ray Tracing. Unreal Engine Documentation. Recuperado 8 de noviembre de 2021, de https://docs.unrealengine.com/4.27/en-US/RenderingAndGraphics/RayTracing/
Epic Inc. (2021, 4 noviembre). Path Tracer Requirements. Oficial Twinmotion Documentation. Recuperado 5 de noviembre de 2021, de https://twinmotionhelp.epicgames.com/s/article/Path-Tracer-Requirements?language=en_US
Michigan State University. (s. f.). Current Gen 3D Game Prop Production. Coursera. Recuperado 3 de noviembre de 2021, de https://es.coursera.org/learn/3d-game-prop-production
NVIDIA. (2021, 8 noviembre). RTX Render Settings — Omniverse View documentation. RTX Render Settings. Recuperado 8 de noviembre de 2021, de https://docs.omniverse.nvidia.com/app_view/prod_materials-and-rendering/rtx_render-settings.html
Unity Technologies. (2020). Getting started with ray tracing | High Definition RP | 7.1.8. Documentación oficial UNITY. Recuperado 8 de noviembre de 2021, de https://docs.unity3d.com/Packages/com.unity.render-pipelines.high-definition@7.1/manual/Ray-Tracing-Getting-Started.html#FinalSetup
Unity Technologies. (2020b). Path tracing | High Definition RP | 7.1.8. Documentación oficial UNITY. Recuperado 8 de noviembre de 2021, de https://docs.unity3d.com/Packages/com.unity.render-pipelines.high-definition@7.1/manual/Ray-Tracing-Path-Tracing.html
Unity-Technologies. (2021, 19 julio). GitHub – Unity-Technologies/HDRPRayTracingScenes: This repository contains a startup DXR project. GitHub. Recuperado 8 de noviembre de 2021, de https://github.com/Unity-Technologies/HDRPRayTracingScenes
Categoría:
Prospección de técnicas de representación tridimensional para tiempo real y render fuera de línea.
Herramientas de desarrollo asociadas:
Unreal, Unity, Marmoset Toolbag, 3DS MAX, Nvidia Omniverse, Substance 3D Painter y 3D Stager, Blender, Twinmotion, Vred, Vantage
Análisis con modelo estandarizado para PBR cómo parte de la revisión de técnicas de renderizado por GPU contemporáneas
Situación
El desarrollo tecnológico ha permitido incorporar núcleos de procesamiento gráfico especializados para Ray Tracing y Path Tracing que permiten acelerar en gran manera los procesos de representación en tiempo real, es necesaria la exploración y en su caso la incorporación de herramientas compatibles con esta tecnología para mejora del proceso de producción y visualización de contenidos gráficos.
Redacción de la solución
Se ha experimentado con las aplicaciones comerciales más comunes que incorporan el trazado de rayos (Ray Trace) y el trazado de rutas (Path Tracing) como núcleo de renderizado para tiempo real (VR visualización en tiempo real) y render fuera de línea.
Se encontró que muchas de las aplicaciones verificadas cuentan con la opción de aprovechar la aceleración gráfica y el cálculo de Ray Tracing y Path Tracing considerando la aplicación Stager cómo la de mejor calidad para render fuera de línea.
Cuales existen
La tecnología de aceleración por GPU para procesamiento de imágenes ha tenido una evolución constante en industrias como la animación por computadora, la visualización y las aplicaciones para tiempo real, si consideramos que los estándares actuales de la industria incorporan la aceleración grafica a través de trazado de rayos y trazado de rutas entonces los siguientes softwares son los que podrías ocupar.
Motor de juegos |
Visualizador |
Creación de contenido |
Unreal Engine [Path Tracing, Ray Tracing] Unity [Ray Tracing, Path Tracing] |
Marmoset Toolbag [Ray Tracing] Twinmotion [Path tracing] Substance 3D Stager [Ray tracing] Nvidia Omniverse [Path Tracing, Ray Tracing, Iray] Vred [Ray Tracing] |
3DS MAX 2022 [Ray Tracing] Substance 3D Painter [Iray] Blender [Ray Tracing] |
Cada una de estas herramientas pone a disposición aceleración por ray tracing disponible en las aceleradoras gráficas de la familia RTX, en cada una existen diferentes configuraciones que deberán ser realizadas para que en conjunto con materiales PBR representen fielmente una superficie o un escenario.
Cómo se configuran
El proceso es simple en la mayoría de los casos, mientras se disponga de una aceleradora gráfica de la familia RTX con drivers actualizados los programas permitirán activar botones para renderizar por Ray Tracing o Path Tracing, la configuración también es simple pero el resultado en verdad mejora la calidad gráfica, con lo que su uso se recomienda ampliamente si se dispone de una aceleradora gráfica compatible.
|
Figura 1. Victor Franco. Activación de la opción Trazado de Rayos en Adobe Substance 3D Stager. 2021. Imagen digital. |
Cuál es el resultado
El más versátil y de buena calidad es Nvidia Omniverse, pues permite renderizar con 3 procesos diferentes, tanto en tiempo real como en render fuera de línea.
Figura 2. Victor Franco. Representación en Nvidia Omniverse Create con Iray activado. 2021. Imagen digital. |
|
En cuanto a calidades de render fuera de línea Substance 3D Stager y Marmoset Toolbag presentan la mejor solución final, considerando que su tiempo de renderizado es reducido a través de la aceleración gráfica.
|
Figura 3. Victor Franco. Representación en Adobe Substance 3D Stager con Ray Tracing activado. 2021. Imagen digital. |
Figura 4. Victor Franco. Representación en Marmoset Toolbag con Ray Tracing activado. 2021. Imagen digital. |
|
Facilidad de uso
Twinmotion es una aplicación muy amigable con el usuario, presenta una interfaz intuitiva que permite activar el rastreo de rutas de forma simple, solo activando un botón lo que mejora considerablemente el acabo gráfico de renders fuera de línea. |
|
Figura 5. Victor Franco. Representación en Twinmotion con Path Tracing activado. 2021. Imagen digital. |
|
Marmoset Toolbag es otra opción que simplifica gratamente el uso de la tecnología de trazado de rayos, basta con activarla y el motor de render en tiempo real aprovechara los núcleos de Ray Tracing de la aceleradora gráfica. |
Figura 6. Victor Franco. Representación en Marmoset Toolbag con Path Tracing activado. 2021. Imagen digital. |
Substance 3D Painter y 3D Stager son parte de la suite 3D y RA de Adobe y ambos facilitan el acceso a la aceleración a través de botones y opciones de menú, en el caso de Painter hace uso de la tecnología Iray y Stager aprovecha la tecnología Ray Trace.
|
|
Figura 7. Victor Franco. Representación en Marmoset Toolbag. 2021. Imagen digital |
Figura 8. Victor Franco. Representación en 3D Stager. 2021. Imagen digital |
Los motores de juego difieren de las aplicaciones de visualización pues para la integración de Path Tracing y Ray Tracing se debe modificar el estándar del engine para una versión que soporte el uso de la aceleración y cálculo de Ray Tracing y Path Tracing, pues al crear un ecosistema contenido este debe ser configurado más a profundidad, lo que requiere de mayor conocimiento para poder ejecutarlo.
Unity por su parte permite usar Ray Tracing y Path Tracing, considerando este último para versiones de representación fuera de línea debido al tiempo de cálculo que requiere para refinar la imagen. La opción de Ray Tracing si permite un desplazamiento continuo aplicable para sistemas de realidad virtual y aplicaciones interactivas 3D.
|
Figura 9. Victor Franco. Path Tracing en Unity. 2021. Imagen digital |
En el caso de Path Tracing para Unreal su uso esta más enfocado al render fuera de línea para soluciones arquitectónicas o cinematográficas, pero puede ser usado en aplicaciones de producción virtual, Ray Tracing está pensado para su uso en tiempo real y es bastante efectivo en la mejora gráfica.
|
Figura 10. Victor Franco. Path tracing en Unreal Engine. 2021. Imagen digital |
Vred permite renderizar a través del uso de Ray Tracing, para su uso solo debe activarse la opción renderizar con Ray Tracing via GPU, existe la opción de calcularlo via CPU pero esta opción es demandante para el sistema y aumenta el tiempo de respuesta a una calidad de cálculo aceptable.
|
Figura 11. Victor Franco. Renderización en tiempo real usando Ray Tracing en Vred. 2021. Imagen digital |
3DS MAX 2022 permite el uso de aceleración gráfica con Path Tracing desde su versión 2021 lo que permite previsualización de escenas que aprovechan la tecnología de las aceleradoras RTX y que también emula el cálculo de forma reducida en aceleradoras anteriores logrando un render distribuido en GPU que permite previsualizar rápidamente antes de generar la imagen final para render fuera de línea y para tiempo real la opción High Quality permite revisar las superficies PBR de modelos.
|
|
Figura 12. Victor Franco. Representación en Viewport de 3DS MAX con High Quality. 2021. Imagen digital |
Figura 13. Victor Franco. Representación en Viewport de 3DS MAX con ActiveShade. 2021. Imagen digital |
Blender no se caracteriza por su facilidad de uso ni ser intuitivo para el usuario, aun así, presenta una buena calidad gráfica y si se profundiza en el manejo del software obtiene muy buenos resultados.
|
Figura 14. Victor Franco. Representación en Viewport de Blender con Cycles y OptiX. 2021. Imagen digital |
Vantage es un programa de Chaos Group de reciente creación en el que es posible aprovechar las ventajas de Ray Tracing y que tiene live link con las aplicaciones de creación de contenido más usadas en el segmento de Arquitectura Ingeniería y Construcción o AEC por sus siglas en inglés, esta ventaja le permite a arquitectos e ingenieros ocupar rápidamente soluciones de alta calidad visual sin necesidad de exportar o crear materiales de transferencia acelerando significativamente los procesos de producción y de visualización de ideas.
En la práctica la interfaz y el manejo es similar a las aplicaciones contemporáneas de visualización de materiales PBR y BRDF en la que la iluminación basada en imágenes o la iluminación simulada trabajan en conjunto con el cálculo para Raytrace mostrando alta calidad visual final para render en tiempo real y render fuera de línea.
Figura 15. Victor Franco. Representación en Vantage usando PBR y BRDF. 2021. Imagen digital |
|
La diferencia más significativa es el como se introducen los contenidos a Vantage, pues a diferencia de los antes explorados este depende de un live link que intercambia datos entre la aplicación de creación de contenido (3DS MAX, Maya, Sketchup, Rhino, Revit y Cinema 4D) y a través del puente formado Vantage recibe la información y configuraciones, a su vez este puente es un canal de 2 vías pues permite trasladar la configuración de Vantage a la aplicación de creación de contenido para su previsualización y configuración.
Conclusiones
En el análisis de resultados se encuentra que, aunque todos los programas analizados permiten el uso de ésta tecnología su facilidad de uso, precisión y calidad varía entre cada uno de ellos, debe considerarse que algunos permiten el uso de las 3 opciones disponibles, Path, Ray e Iray, en cada una de ellas se puede evaluar su desempeño y calidad, pero dependerá de que el programa a analizar los integre, el único de los programas analizados que integra los 3 es Nvidia Omniverse, lo que permite considerarlo el más completo en cuanto a funciones pero adolece de calidad final, en donde Stager es el principal exponente.
Dependiendo cual se la necesidad a cubrir será la herramienta recomendable, para render fuera de línea puede usarse Twinmotion, Nvidia Omniverse [Iray], Susbtance 3D Stager, 3DS MAX [Active Shade], Vantage o Marmoset Toolbag, para aplicaciones para tiempo real y realidad virtual puede usarse Nvidia Omniverse [Ray Trace], Unity en el canal de renderizado de alta definición [HDRP], Unreal Engine, 3DS MAX [High Quality], Vantage y los antes mencionado si solo se desea previsualizar el modelo con esta tecnología.
- Mtro. Víctor Hugo Franco Serrano (vhfranco at unam dot mx)
Departamento de Visualización y Realidad Virtual
dvrv at unam dot mx
ixtli at unam dot mx
https://dvrv.unam.mx https://ixtli.unam.mx
Tel: 56 22 88 77