Resultados 1 al 21 de 21

La oscura verdad del Path Tracing de NVIDIA: no es un estándar.

  1. #1
    Fecha de ingreso
    May 2006
    Mensajes
    335

    La oscura verdad del Path Tracing de NVIDIA: no es un estándar.

    Hola.

    Un poco de justicia a tanto marketing y negocio cerrado.

    https://hardzone.es/noticias/tarjeta...racing-nvidia/

    Un saludo.

  2. #2
    Fecha de ingreso
    May 2006
    Mensajes
    335
    Yo sigo prefiriendo las CPUs.

    Existen dos tipos de path tracing, unidireccional y bidireccional. El primero solo rastrea rayos hacia atrás, es decir, desde la cámara hasta la escena; el segundo, además, rastrea rayos desde las fuentes de luz hasta la escena.

    Seguimiento de ruta hacia atrás, donde se generan rutas comenzando desde la cámara y rebotando por la escena hasta que encuentran una fuente de luz. Esto se conoce como "hacia atrás" porque los caminos que comienzan desde la cámara y avanzan hacia la fuente de luz son opuestos a la dirección en la que realmente viaja la luz. Todavía produce el mismo resultado porque todos los sistemas ópticos son reversibles.

    Seguimiento de luz (o seguimiento de ruta hacia adelante), donde se generan rutas a partir de las fuentes de luz y rebotan por la escena hasta que se encuentran con la cámara.

    Las CPU son dispositivos en serie, por lo que pueden ser lentas, pero pueden realizar cálculos más precisos (bidireccional path tracing, hacia adelante y hacia atrás), por lo que generalmente producen mejores resultados. Las GPU son dispositivos paralelos, sin embargo, no pueden realizar cálculos matemáticos tan precisos porque no es necesario detener demasiado el proceso (unidireccional path tracing, solo hacia atrás).

    La gran mayoría, por no decir todos, los motores de render actuales son unidireccionales; las GPU mandan, la velocidad manda, la calidad en imagen estática baja. Como cosa buena permiten animaciones mucho más rápidas.

    https://en.wikipedia.org/wiki/Path_t...l_path_tracing

    Por esto necesitan las GPUs el eliminador de ruido.

    https://forums.autodesk.com/t5/maya-...t/td-p/9810939

    Se aplica a todos los motores GPU actuales.

    Las GPUs son muy rápidas, desde luego, pero tienen sus problemas y no son de fácil solución, independientemente de monopolios contra la ley pero permitidos, ya sabemos.

    Un saludo.
    Última edición por cube; 20-10-2023 a las 10:23

  3. #3
    Fecha de ingreso
    May 2006
    Mensajes
    335
    Unidireccional: Cálculos en paralelo los rayos no dependen del anterior. GPU. Más rápidos pero menos reales.

    Bidireccional: Cálculos en serie los rayos dependen del anterior. CPU. Más lentos pero más reales.

    Un saludo.

  4. #4
    Fecha de ingreso
    Apr 2012
    Mensajes
    1,168
    ¡Interesante saber tu perspectiva! Ciertamente, en el contexto de la animación y considerando el tiempo de render, las GPU pueden ser una opción más eficiente. La capacidad de procesamiento paralelo de las GPU puede marcar una gran diferencia en términos de rendimiento en escenarios donde se requiere renderizar muchas imágenes.

    En el mundo de la animación, donde la velocidad de producción a menudo es clave, las GPU ofrecen una ventaja significativa. Además, si no hay una diferencia perceptible en la calidad final en tus casos específicos, entonces la elección de GPU tiene mucho sentido.

    Gracias por compartir tu experiencia y perspectiva. ¡Saludos!

  5. #5
    Fecha de ingreso
    Apr 2012
    Mensajes
    1,168
    Como ejemplo, la imagen a la izquierda está hecha con GPU y tardó más de 33 minutos, y no sirve para animación, pues titila en la calidad de GI para poder reducir el tiempo a 33 minutos. Es decir, para que sirva para animación debería tardarse unas tres horas como mínimo. A la derecha está la misma escena sin tocarle nada, hecha con GPU a la extremísima cantidad de 2400 samples y tardó 48 segundos.

    Clic en la imagen para ver su versión completa. 

Nombre: CPU_33min16sec.jpg 
Visitas: 642 
Tamaño: 734.8 KB 
ID: 246811 Clic en la imagen para ver su versión completa. 

Nombre: Vantage_2400sampl_48sec.jpg 
Visitas: 613 
Tamaño: 621.7 KB 
ID: 246812

    La diferencia de calidad es perceptible, pero sinceramente mejor en la versión por GPU.

    Abajo, la misma escena sin tocarle nada, renderizada a 30 samples (lo que siempre uso en mis escenas) se tarda 5 segundos por cuadro y el resultado en animación resulta perfectamente estable. Para lograr un resultado similar en CPU se tardaría al menos 3 horas por cuadro para estabilizar la GI.



    Saludos!

    -- IMÁGENES ADJUNTAS --


  6. #6
    Fecha de ingreso
    Apr 2012
    Mensajes
    1,168
    El artículo lo había leído cuando salió en marzo. Interesante. Cruel lo de Nvidia, pero así son los monopolios, son algo para pocos, pero lo que se ofrece es realmente top notch. No ocurre así con los productos estandarizados, que siempre se ven frenados por el fenómeno de entropía debido a la confluencia de tirones en diferentes direcciones de desarrolladores confluyendo en el producto, haciendo que éste no llegue al brillo máximo que tendría si estuviese celosamente custodiado por un solo dueño.

    Respecto de la potencialidad no aprovechada de la 4090, pues Chaos Vantage sí que la aprovecha al 100%, haciendo que la velocidad de render sea el 200% de lo que ofrece la 3090, cuando la cantidad de núcleos no es el doble de la 3090, ni el consumo en watts es tampoco el doble de la 3090. Hay un aceitado ultra perfeccionado entre Chaos y Nvidia haciendo que Vantage aproveche el potencial como ningún otro software del mercado lo hace. Pero Chaos no ofrece más gratuitamente su Vantage, y de barato no tiene nada.

    Este tipo de afinado de punta de lápiz tipo "Ferrari", como dice el artículo, puede que sea antipopular y hasta casi injusto ante ciertos ojos de quienes abrazan la filosofía open source, pero hay que reconocer que la calidad final es notable. Y eso es porque el producto está celosamente custodiado como monopolio, y eso lo mantiene en un estado de refinamiento supremo. Es decir, no es para todos, pero en algún rincón tiene que existir ese elixir de los dioses disponible para aquellos que lo puedan acceder. No todo es para todos.

  7. #7
    Fecha de ingreso
    May 2006
    Mensajes
    335
    Cita Iniciado por Carolina Ver mensaje
    El artículo lo había leído cuando salió en marzo. Interesante. Cruel lo de Nvidia, pero así son los monopolios, son algo para pocos, pero lo que se ofrece es realmente top notch. No ocurre así con los productos estandarizados, que siempre se ven frenados por el fenómeno de entropía debido a la confluencia de tirones en diferentes direcciones de desarrolladores confluyendo en el producto, haciendo que éste no llegue al brillo máximo que tendría si estuviese celosamente custodiado por un solo dueño.

    Respecto de la potencialidad no aprovechada de la 4090, pues Chaos Vantage sí que la aprovecha al 100%, haciendo que la velocidad de render sea el 200% de lo que ofrece la 3090, cuando la cantidad de núcleos no es el doble de la 3090, ni el consumo en watts es tampoco el doble de la 3090. Hay un aceitado ultra perfeccionado entre Chaos y Nvidia haciendo que Vantage aproveche el potencial como ningún otro software del mercado lo hace. Pero Chaos no ofrece más gratuitamente su Vantage, y de barato no tiene nada.

    Este tipo de afinado de punta de lápiz tipo "Ferrari", como dice el artículo, puede que sea antipopular y hasta casi injusto ante ciertos ojos de quienes abrazan la filosofía open source, pero hay que reconocer que la calidad final es notable. Y eso es porque el producto está celosamente custodiado como monopolio, y eso lo mantiene en un estado de refinamiento supremo. Es decir, no es para todos, pero en algún rincón tiene que existir ese elixir de los dioses disponible para aquellos que lo puedan acceder. No todo es para todos.
    Hola.

    Los monopolios son ilegales generalmente en los países con economía de libre mercado. El motivo fundamental es que cuando solo existe una empresa que produce un bien de consumo, esta puede fijar arbitrariamente el precio que quiera perjudicando a la población. Cuando hay varias, estas compiten entre sí para dar el mejor producto al mejor precio. Además, los monopolios a menudo son fuente de corrupción e ineficacia.

    No obstante, es normal por otro lado que haya en algunos países monopolios o al menos empresas estatales de considerable tamaño (casi monopolios de facto) que producen algún bien fundamental para la economía del país. No existen reglas fijas, eso depende del país. Los únicos países con monopolios a todos los niveles son los socialistas, y su economía suele ir de pena.

    No veo una innovación en Nvidia con sus productos de supercomputación. A nivel empresa, la innovación es el proceso por el cual se transforma una idea en un producto o servicio novedoso en el mercado, o por el cual se incorpora un novedoso proceso de fabricación o nuevos métodos de organización o de comercialización en la empresa. La supercomputación existe desde hace años, algunos dirán que acerca esa capacidad de cálculo a las personas, pero la innovación para las personas es el proceso de crear y desarrollar nuevas ideas, productos, servicios o procesos que generan valor para todas las personas y mejoran la forma en que se hacen las cosas. Es una opinión personal, pero no creo que la supercomputación en paralelo sea ninguna innovación para las personas si no pueden acceder a ella.

    A nivel técnico 3D, las GPU son la punta de lanza de Nvidia pero no son capaces de calcular bidireccional path tracing ni ningún proceso que implique bidireccionalidad, hacen un unidireccional path tracing con "trucos" para simular el bidireccional path tracing. Los motores de render unidireccional path tracing, la mayoría por no decir todos los actuales acelerados por GPU, en escenas con iluminación indirecta compleja como pueden ser las caústicas tienen una probabilidad muy baja de que un camino iniciado en la cámara finalmente llegue a una fuente de luz. Esto da como resultado una imagen ruidosa (por lo que acuden a "trucos" como el denoiser que es perfectamente paralelizable) y una imposibilidad práctica de manejar casos complejos. Esto no es innovación.

    En animaciones sí existe un avance porque permite a las personas con menos recursos acceder a una supercomputación propia de gigantes empresariales, pero desde mi punto de vista es una trampa porque la realidad de los monopolios es favorecer al gigante no al pequeño.

    Lo mismo digo de todas, grandes o pequeñas, Microsoft, Chaos, Otoy, Intel, etc.

    Si no se ganan a la gente, acaban, porque las personas son lo importante, no las empresas.

    Un saludo.
    Última edición por cube; 27-10-2023 a las 15:55

  8. #8
    Fecha de ingreso
    May 2006
    Mensajes
    335
    Cita Iniciado por Carolina Ver mensaje
    ¡Interesante saberlo! En mi caso, prefiero ampliamente las GPU porque me dedico a la animación, y el motor por GPU me da la posibilidad de realizarla. Además, en mi caso, dado que mis escenas son artísticas, llevan iluminación cinematográfica, muchos filtros, y son escénicas (no apuntan al detalle sino a escenarios generales, interiores y exteriores), al final de cuentas no hay diferencia perceptible de calidad entre CPU y GPU. La única diferencia realmente perceptible (y abismal) son los tiempos de render. ¡Saludos!
    La diferencia es muy notable, una cosa es que los motores por CPU hagan unidireccional pathtracing para asemejarlos a los resultados de velocidad de las gpu y otra que las gpu no sean capaces de bidireccional pathtracing. Las escenas que pones son ideales para unidireccional pathtracing, no existe ninguna iluminación compleja en ellas. Al final son todo herramientas, lo importante es la mano que las utilice, pero no son iguales.

    Es una opinión personal Carolina.

    Un saludo.

  9. #9
    Fecha de ingreso
    May 2006
    Mensajes
    335
    Existe una convergencia interesada de los motores de render por CPU hacia las GPU porque el futuro es el metaverso o conceptos similares, en los que lo estático no tiene cabida. Y lo dinámico necesita mucha velocidad y recursos.

    Como decía el genial Marcos Fajardo antes de vender Solid Angle, siempre querrán más dinosaurios, más y más naves y alienígenas.

    Un saludo.

  10. #10
    Fecha de ingreso
    May 2006
    Mensajes
    335
    Nvidia está vendiendo el Santo Grial de la simulación en tiempo real. Es una meta elusiva: más dinosaurios, más naves espaciales, más explosiones. Al final, la cantidad de datos que hay que cargar en la memoria antes de la simulación hace imposible hacerlo inmediatamente. Es cierto que hay otras tecnologías que se utilizan en videojuegos, pero todavía no tienen la calidad que se necesita para alcanzar el Santo Grial. Repito, ya veremos en los próximos años qué pasa.

    Un saludo.

  11. #11
    Fecha de ingreso
    May 2006
    Mensajes
    335
    Los "trucos" que hacen los motores GPU para simular situaciones bidireccionales se basan todos en superposiciones, es decir, a la imagen fuente le calculan algo y ese algo lo superponen, así es como funcionan:

    Primero, envían fotones desde una fuente de luz y los dejan rebotar, reflejándose y refractándose. Luego registran su posición y color en el espacio. A continuación, utilizando la posición y la información de color de estos "fotones", realizan cálculos de dispersión para determinar el efecto cáustico en el espacio de pantalla. Luego reducen el ruido temporal y espacial en el efecto cáustico antes de finalmente superponerlo a la imagen.

    En la realidad, cualquier luz puede causar caústicas. Pero en los motores de render, las caústicas se simulan haciendo que la fuente de luz emita lo que se llama "fotones cáusticos". Cálculos desde la fuente de luz y la cámara (bidireccional), cálculos solo desde la cámara (unidireccional), los "trucos" son híbridos que superponen resultados.

    Un saludo.

  12. #12
    Fecha de ingreso
    May 2006
    Mensajes
    335
    Clic en la imagen para ver su versión completa. 

Nombre: UnidvsBid1.png 
Visitas: 174 
Tamaño: 1.23 MB 
ID: 246824Clic en la imagen para ver su versión completa. 

Nombre: UnidvsBid2.png 
Visitas: 172 
Tamaño: 710.1 KB 
ID: 246825Clic en la imagen para ver su versión completa. 

Nombre: Bidir.jpg 
Visitas: 159 
Tamaño: 46.8 KB 
ID: 246828

    Un saludo.

    -- IMÁGENES ADJUNTAS --



  13. #13
    Fecha de ingreso
    May 2006
    Mensajes
    335
    Resumiendo, las GPU calculan unidireccionalmente desde la cámara y unidireccionalmente desde la luz, y después lo mezclan; en cambio, los bidireccionales lo hacen todo en uno.

    Desde mi punto de vista, la mezcla que hacen las GPU produce imágenes menos realistas que el todo en uno de las CPU bidireccionales.

    Eso sí, las CPU bidireccionales son más lentas.

    Un saludo.

  14. #14
    Fecha de ingreso
    Apr 2012
    Mensajes
    1,168
    Al final del día, lo que importa es que el render se vea bonito y resulte funcional para transmitir la idea escénica artística que se tiene en mente, sin morir en el intento.

  15. #15
    Fecha de ingreso
    Apr 2012
    Mensajes
    1,168
    A mí me parece que lo hace bien, aun siendo unidireccional. Como puede verse, no solo la luz directa causa cáusticas sino también los rebotes de las paredes lo hacen. En este motor, toda luz existente en la escena, todo rebote por muy secundario, de secundario, de secundario que sea, causa cáusticas.

    Clic en la imagen para ver su versión completa. 

Nombre: Cornell.jpg 
Visitas: 161 
Tamaño: 311.7 KB 
ID: 246832 Clic en la imagen para ver su versión completa. 

Nombre: Cornell_01.jpg 
Visitas: 181 
Tamaño: 310.0 KB 
ID: 246833 Clic en la imagen para ver su versión completa. 

Nombre: Cornell_8.jpg 
Visitas: 177 
Tamaño: 312.5 KB 
ID: 246835

    ¿Qué opinión tienes? Me interesa sinceramente tu crítica, Cube, porque sabes mucho y ves detalles que otros (incluyéndome a mí) muchas veces no vemos.
    Gracias.

    Saludos.

    -- IMÁGENES ADJUNTAS --



  16. #16
    Fecha de ingreso
    Apr 2012
    Mensajes
    1,168

  17. #17
    Fecha de ingreso
    May 2006
    Mensajes
    335
    Cita Iniciado por Carolina Ver mensaje
    ¿Qué opinión tienes? Me interesa muy sinceramente tu crítica Cube.
    Hola.

    Veo varias cosas.

    Lo primero que veo es una persona, una artista que no está limitada por las herramientas que utiliza, acostumbrada a buscar maneras diferentes de hacer las cosas para conseguir un objetivo.

    Lo segundo que veo es algo que me recuerda a la técnica de Jos Stam (Stam, 1996) que exploró por primera vez las cáusticas en tiempo real. El enfoque de Stam implicó calcular una textura cáustica animada utilizando la teoría de ondas, de modo que pudiera usarse para iluminar la planta baja. Esta textura **se mezcló de forma aditiva con las texturas base del objeto**, dando una apariencia agradable y convincente. Esa mezcla aditiva para combinar dos visiones la de la cámara y la de la luz en una imagen creo que es la base.

    Clic en la imagen para ver su versión completa. 

Nombre: fig02-03.jpg 
Visitas: 187 
Tamaño: 78.0 KB 
ID: 246837

    No parece proyección como la técnica de Stam porque la refracción de la pared de colores en la esfera produce una distorsión en las caústicas que hace que la imagen aparezca del revés, los colores invertidos.

    Clic en la imagen para ver su versión completa. 

Nombre: Caus.png 
Visitas: 200 
Tamaño: 1.19 MB 
ID: 246844 Clic en la imagen para ver su versión completa. 

Nombre: refraccion02.jpg 
Visitas: 191 
Tamaño: 120.1 KB 
ID: 246843

    Supongo que eso demostraría que es raytracing, pero tampoco parece bidireccional, yo diría que es más bien una técnica de refinamiento progresivo de caústicas muy rápido gracias a la potencia de las GPU de Nvidia, Chaos parece tener dos soluciones bastante convincentes y rápidas.

    https://support.chaos.com/hc/en-us/a...a-for-3ds-Max-

    https://docs.chaos.com/display/VMAX/Caustics

    No sé cuál utiliza Vantage, supongo que las dos se fusionaran en una sola técnica, igual ya son la misma. Lo que creo seguro es que superponen los resultados. No se calculan de una pasada todo.

    La tercera cosa que veo son estas dos imágenes:

    Clic en la imagen para ver su versión completa. 

Nombre: cornell_.jpg 
Visitas: 190 
Tamaño: 69.6 KB 
ID: 246850 Clic en la imagen para ver su versión completa. 

Nombre: Cornell.jpg 
Visitas: 195 
Tamaño: 311.7 KB 
ID: 246851

    Un saludo.

    -- IMÁGENES ADJUNTAS --





  18. #18
    Fecha de ingreso
    Apr 2012
    Mensajes
    1,168
    Ante todo, gracias por tu información, siempre tan útil.

    A continuación, posteo algo que creo que ya viste, pero que en este contexto de este hilo podría aportar para profundizar un poco más sobre el asunto cáusticas en este motor



    Y este también


    Saludos!

  19. #19
    Fecha de ingreso
    Apr 2012
    Mensajes
    1,168
    Observando los videos, me parece que las caústicas se calculan en la misma pasada que todo lo demás. No parecen ser dos cosas separadas superpuestas. Lo que pasa es que el salto de imagen que ves al segundo después de mover la escena es porque Vantage hace un switch entre un modo denoiser a otro. Las caústicas se ven en todo momento que se está moviendo la escena, pero mientras mueves la escena están difusas porque no se da tiempo a acumular pases, hasta que se deja reposar.

    Allí se comienzan a sumar pases y a la vez cambia de denoiser (el tiempo de switch entre un denoiser y el otro se setea en un valor custom en número de pases). Y entonces las caústicas se van refinando. Ocurre que las caústicas llevan cálculos mucho más intensos y necesitan muchos más pases para refinarse, comparadas a otros procesos que tras pocos pases ya se ven suficientemente refinados. Y es por eso que esos otros procesos se manifiestan como más "realtime" que las caústicas, porque en menos pases ya alcanzan un refinamiento suficiente para apreciarse como "acabados".

    (Pongo comillas porque en verdad nunca acaban los procesos, solo refinan y refinan tras sumar pases. Solo que procesos como GI, reflexiones especulares, refracciones cristalinas, etc., son de cálculos más simples y ya después de los 15 a 20 pases no se aprecia casi diferencia de integridad. Aunque sí la haya sutilmente).

    Tiempo de switch entre denoisers (lo que provoca el salto en la imagen luego de reiniciarse los pases tras mover la escena):

    Clic en la imagen para ver su versión completa. 

Nombre: Screenshot_20231030-134937_YouTube.jpg 
Visitas: 178 
Tamaño: 793.5 KB 
ID: 246877

    Esto del switch entre denoisers lo explican en este video.



    Saludos!

    -- IMÁGENES ADJUNTAS --

  20. #20
    Fecha de ingreso
    Nov 2023
    Mensajes
    7
    Cita Iniciado por Carolina Ver mensaje
    Como ejemplo, la imagen a la izquierda está hecha con GPU y tardó más de 33 minutos, y no sirve para animación, pues parpadea a lo loco en la calidad de GI para poder bajar el tiempo a 33 minutos. Es decir, que para que sirva para animación debería tardarse unas tres horas como mínimo. A la derecha está la misma escena sin tocarle nada, hecha con GPU a la extremísima cantidad de 2400 samples y tardó 48 segundos.

    Clic en la imagen para ver su versión completa. 

Nombre: CPU_33min16sec.jpg 
Visitas: 642 
Tamaño: 734.8 KB 
ID: 246811 Clic en la imagen para ver su versión completa. 

Nombre: Vantage_2400sampl_48sec.jpg 
Visitas: 613 
Tamaño: 621.7 KB 
ID: 246812

    La diferencia de calidad es perceptible, pero sinceramente mejor en la versión por GPU.

    Saludos!
    En esa escena, la diferencia de calidad entre el render CPU y GPU es BRUTAL. Eso no significa que siempre valga la pena, sí es para un proyecto comercial y al cliente ni le importa más el render GPU.

  21. #21
    Fecha de ingreso
    Apr 2012
    Mensajes
    1,168
    Para mi percepción, la imagen de GPU Vantage (derecha) es claramente mejor. La imagen por CPU Vray tiene los siguientes defectos:

    Light leaks (en la mesada de la ventana contra la pared).
    El ruido es notable y afecta la moldura bajo la ventana, así como en todos los rincones que parecen estar llenos de hongos.
    El contraste es pobre, no logrando manejar adecuadamente la exposición de cámara física.
    Entre otras cosas.

Temas similares

  1. Respuestas: 5
    : 27-10-2023, 20:04
  2. ¿Qué es el Path Tracing?
    Por cube en el foro Render, Iluminación y Cámaras
    Respuestas: 3
    : 18-09-2023, 09:27
  3. Respuestas: 0
    : 17-06-2009, 04:10
  4. Ray tracing yphoton mapping
    Por JEOGIOMAR en el foro Render, Iluminación y Cámaras
    Respuestas: 0
    : 23-03-2008, 03:48
  5. Progressive path Tracing
    Por wanyaes en el foro Render, Iluminación y Cámaras
    Respuestas: 2
    : 16-05-2005, 09:51