Gracias Gracias:  1
Resultados 1 al 7 de 7

Tema: Hsph Subdivs e Interpolate samples dudas

  1. #1
    Miembro Nuevo
    Fecha de ingreso
    May 2004
    Mensajes
    17

    Hsph Subdivs e Interpolate samples dudas

    Buenas, estoy aquí de nuevo leyendo y leyendo el tutorial de dideje y creo por fin empezar a entender el comportamiento y cualidades de este motor de render, sin embargo sigo teniendo algunas dudas (he buscado la respuesta usando el Buscador del foro y no la he encontrado, por eso es que llego a esta instancia) Voy a tratar de ser lo más claro que pueda, me refiero a las Hsph Subdivs y a Interpolate samples para el calculo del irradiance map, citando a dideje "¿Pocos rayos o pocas muestras o poca interpolación? Partiendo del hecho de que cada escena es un mundo,
    creo que, lo mejor es optar por un término medio. Un exceso o una falta de cualquiera de esos tres ingredientes suele dar lugar a problemas."

    Bueno el asunto es que no logro encontrar una relación de valores aplicable para cada tipo de escena que tengamos, lo único que halle fue algo así como: "Con un número alto de HSph Subdivs las Interp. Samples deben ser bajas para evitar que aparezcan artefactos (iluminación en esquinas...). Un valor alto mayor calidad en el render, pero peores tiempos" yo me pregunto ¿cuanto seria mucho y cuanto seria poco? Vean el ejemplo al que me refiero, en el render final de la escena_pruebas.rar dideje uso los siguientes parámetros:

    HSph. Subdivs: 35
    Interp. Samples: 45

    Mientras que en la de Luz_natural_inicio.rar el uso unos valores así:
    hsph 35 inter 35 y he visto valores de lo más raros, como en algunos vídeo tutoriales de Evermotion utilizaban 20,20 y en exteriores la relación hsph 30 inter 10 (en un tutorial de osmosis) quiero aclarar primero que todo que comprendo que son estos dos parámetros los cuales están muy bien explicados por dideje en la página 10 del post "Interior con luz artificial" pero no hace ninguna referencia a que representan estos valores, algo que si se hace por ejemplo en aclarar que significa el valor de 1 en Max density del calculo de fotones en el cual 1 es la unidad del sistema en el que estemos trabajando (metros, centímetros, milímetros) me gustaría tener alguna referencia en cuanto a posibles valores que adopten estos parámetros según la escena que tengamos. Bueno espero haber sido lo más concreto, y por supuesto si esto está respondido en algún post o sección de alguno les agradecería que me den el link al mismo, y no se enojen conmigo porque la verdad es que llevo horas tratando de encontrarlo y no lo he logrado.

  2. #2
    H = E + L
    Fecha de ingreso
    Mar 2004
    Ubicación
    Entre dos vectores
    Mensajes
    870

    Re: Hsph Subdivs e Interpolate samples dudas

    Hola.

    Ante todo decir que no soy precisamente la persona más indicada para explicarte todo este tema sin cometer ciertas imprecisiones. Programar un renderer como VRay no es fácil (en realidad es bastante jodido) y las cuestiones técnicas que nos encontramos ante este tema también son complejas de responder.

    Dicho esto, intentaré explicarte lo mejor que pueda en qué consisten los parámetros Hsph. Subdivs e Interp. samples.

    Empezamos con las Hsph. Subdivs.

    Básicamente, un raytracer lo que hace es lanzar rayos (primary rays) desde el punto de vista del observador (la cámara) entonces se va viendo cada rayo en qué punto colisiona. En un raytracer sin soporte para GI, una vez que el rayo intersecta en un punto de una superficie, se calcula las componentes de la iluminación para dicho punto (diffuse, specular...) y listo. En ciertas situaciones en las que se tenga que calcular una reflexión o una refracción, se vuelve a lanzar otro rayo (secondary rays) para llevar a cabo dicho calculo (en realidad se lanzan tantos rayos como máxima profundidad le demos a la reflexión).

    Vale, esto es en un raytracer donde no se soporta GI. Ahora veamos el caso de la GI. Al igual que antes, se lanza un rayo desde la cámara y éste intersecta en algún punto de una superficie. Llegados a este punto es donde se encuentra la gran diferencia entre calcular o no la GI. Sin GI dije que se calculaba la iluminación para ese punto y listo. Pues bien, con GI, lo que hay que hacer es ver la contribución de toda la escena en la iluminación de dicho punto. ¿Cómo se hace esto?. Pues básicamente lanzando más rayos (secondary rays) desde el punto en cuestión. La pregunta ahora es, ¿cuantos rayos y en qué dirección lanzamos dichos rayos?. Aquí es donde entra en juego el parámetro Hsph. Subdivs. Lo que se hace es que se construye un hemisferio (semiesfera) imaginario sobre el punto actual y con una dirección igual a la normal de dicho punto. Esta semiesfera tendrá tantas subdivisiones como le indiquemos en el parámetro Hsph. Subdivs (es como cuando construimos una esfera y le asignamos el número de segmentos). Evidentemente, a más subdivisiones, más rayos secundarios se lanzaran por lo que la GI será de mayor calidad y por supuesto el tiempo de calculo será mayor. Aquí cabe aclarar que si pones un número de 50 subdivisiones, en realidad no estas lanzando 50 rayos sino 2500, es decir, el número de rayos lanzados será igual a Hsph. Subdivs al cuadrado. Otra pregunta que uno se puede hacer es en qué dirección salen estos rayos. ¿Se distribuyen uniformemente sobre el hemisferio?. Lo cierto es que no. Lo que se hace es lanzar rayos aleatoriamente utilizando el algoritmo QMC (Quasí Monte Carlo).

    Para ilustrar todo esto, os adjunto la Imagen1 donde podéis ver el punto que se esta calculando actualmente (la esfera roja), el hemisferio que utilizaremos para lanzar los rayos secundarios y los propios rayos secundarios.

    Como veis en la imagen, algunos rayos impactaran en el muro de la izquierda, otros impactaran en el suelo, otros en la esfera y otros lo harán con el environment que en este caso es de color azul. Así, si un rayo impacta en el environment (color azul), ese azul contribuirá en una determinada cantidad al color del punto que estamos tratando actualmente (el punto representado por la esfera roja). Ahora bien, no todos los rayos contribuyen por igual ya que no todos los rayos llegan a impactar contra una superficie. Bueno, en realidad sí que llegan a impactar todos pero habrán impactos que se producirán muy lejos del punto en curso y por lo tanto no deberán contribuir al color final del punto. Mi teoría es; y aquí es donde voy a especular un poco ya que no consigo encontrar la ayuda de alguna versión reciente de VRay (tengo la de la v1.0), que el parámetro Dist. thresh indica la distancia máxima a la que el impacto de un rayo tendrá efecto. Por ejemplo, imaginad que pongo un Dist. thresh de 0,5 unidades. Lo que conseguiré con esto es que los rayos que impacten a una distancia mayor de 0,5 unidades, no serán tomados en cuenta en el calculo final. Pero como digo, esto es sólo una suposición. Si alguien puede decirme dónde encontrar el manual de la última versión de VRay se lo agradecería.

    Ahora voy a intentar explicar el significado de Interp. samples.

    VRay almacena un determinado número de muestras (samples) en el irradiance map. El número de estas muestras y su disposición espacial va a depender de forma directa (aunque no es lo único que determina esto) de los parámetros Min. rate y Max. rate. Evidentemente, cuantas más muestras se almacenen en el irradiance map, mayor será su calidad pero más tiempo tardará en calcularse. Si os fijáis, VRay, cuando le damos a render, empieza a calcular el irradiance map. El número de pasadas que se utilizaran para calcularlo dependen, como he dicho, de los parámetros Min. rate y Max. rate. Así, si ponemos unos valores de (-3, 0), VRay calculara el irradiance map en 4 pasos. Esto lo podéis ver cuando VRay empieza a renderizar, cuando pone Current task: prepass 1 de 4, etc. Pues bien, imaginemos que VRay ya ha terminado de calcular el irradiance map. Ahora llega la hora de utilizar este irradiance map para generar la escena final. Aquí es donde entra en juego el parámetro Interp. samples. Lo que VRay hace es que interpola los samples del irradiance map. Cuanto mayor sea la interpolación, más suave será la imagen final. Una interpolación demasiado baja, da como resultado los típicos manchurrones. Esto es porque al realizar una interpolación pobre, la diferencia de intensidad entre samples es demasiado acusada.

    Para entender mejor esto, mirad la Imagen2. En ella podéis observar dos samples sacados del irradiance map (estos son los colores de los extremos, es decir, el negro y el gris claro). En la fila de arriba, hemos especificado una interpolación de 4, por lo que se generan 4 samples intermedios, resultantes de la interpolación de los samples originales (los 2 de los extremos). En la fila de abajo, tenemos los mismos samples originales pero en esta ocasión hemos especificado una interpolación de 2, por lo que VRay genera 2 samples intermedios. Ahora, aplicamos un gaussian blur (todo esto lo he hecho en Photoshop por lo que no quiere decir que VRay haga esto) a la fila superior y a la inferior (ver Imagen 3). Como podéis observar, en la fila en la que hemos utilizado un mayor número de interpolaciones, la transición entre un sample y otro es suave mientras que en la fila inferior, donde utilizamos únicamente 2 samples de interpolación, se nota la transición de un sample a otro, lo cual genera los típicos manchurrones que mencioné anteriormente.

    Bueno, pues hasta ahí llego. Espero que te haya aclarado un poco las cosas. La verdad es que explicar esto de forma que se entienda bien es bastante complicado y si encima uno no llega a entender el VRay al 100% (para eso tendría que haber programado un renderer con soporte GI y lo máximo a lo que llegué fué a un raytracer bastante simple ) pues aún más. Esto quiere decir que ciertas cosas que he dicho no pueden ser del todo exactas. Si es así, no me molesta para nada que alguien me rectifique. Al fin y al cabo estamos aquí para aprender.

    Saludos.
    Miniaturas adjuntadas Miniaturas adjuntadas Hsph Subdivs e Interpolate samples dudas-halfvector_hemisferio_240504.jpg   Hsph Subdivs e Interpolate samples dudas-halfvector_interpsamples01_240504.jpg   Hsph Subdivs e Interpolate samples dudas-halfvector_interpsamples02_240504.jpg  

  3. #3
    Miembro Nuevo
    Fecha de ingreso
    May 2004
    Mensajes
    17

    Re: Hsph Subdivs e Interpolate samples dudas

    Una explicación magistral, muchísimas gracias HalfVector, desde ya muy agradecido, me quedan mucho más claro como se configuran estos valores.

  4. #4
    Moderador
    Fecha de ingreso
    Dec 2002
    Mensajes
    991

    Re: Hsph Subdivs e Interpolate samples dudas

    Felicidades HalfVector :D Muy clarito todo
    Lo único mal es lo del valor del dist threshold.Ya se explicó en el post de iluminación.Este valor sirve para controlar la cantidad de muestras que vray cogerá en la distancia entre 2 objetos o superficies. (buenisimo para colocar muestras en esquinas )
    Si te parece bien voy a copiar la pregunta de firefly y tu explicación en mi post que creo que vendrá muy bien y así no se pierde y estaras más accesible.Además de cara a recopilarlo todo ordenadamente es perfecto (si hay tiempo ya se ira haciendo )
    Un saludo :D

  5. #5
    H = E + L
    Fecha de ingreso
    Mar 2004
    Ubicación
    Entre dos vectores
    Mensajes
    870

    Re: Hsph Subdivs e Interpolate samples dudas

    Gracias.

    La verdad es que los valores que VRay ponía por defecto al parámetro Dist. Thresh me parecían muy bajos para ser lo que yo decía. Ahora ya está claro.

    Saludos.

  6. #6
    Miembro Nuevo
    Fecha de ingreso
    Mar 2008
    Mensajes
    2

    Re: Hsph Subdivs e Interpolate samples dudas

    Hola, ante todo, soy muy novata con el tema del 3D, así que puede que os parezca estúpida alguna de las preguntas que pueda hacer. Pero estoy intentando renderizar con Mental Ray y me aparecen unas manchas fosforescentes verdes, magenta, azules. En plan capricho, cada vez que repito el render aparecen en distintos lugares.

    Alguien sabe cómo puede solucionarse esto?

    Un saludo y gracias de antemano.

  7. #7
    Miembro Nuevo
    Fecha de ingreso
    Mar 2009
    Mensajes
    10

    Respuesta: Hsph Subdivs e Interpolate samples dudas y más dudas!!!

    Eres muy claro respondiendo. Me gustan tus exposiciones.

    Ana

Temas similares

  1. Maya No me aparece SubDivs en Maya 2014
    Por KOb0 en el foro Problemas con Programas
    Respuestas: 1
    Último mensaje: 26-01-2014, 11:16
  2. ZBrush Zbrush - Velocidad de trazado y samples de pincel
    Por ofuscado en el foro Modelado
    Respuestas: 2
    Último mensaje: 23-04-2010, 12:33
  3. disminuye el fliqueo al aumentar los samples
    Por danielblanco3d en el foro Render, Iluminación y Cámaras
    Respuestas: 1
    Último mensaje: 19-11-2008, 02:28
  4. Vray Matligth samples
    Por nestorsant en el foro Render, Iluminación y Cámaras
    Respuestas: 0
    Último mensaje: 17-07-2007, 02:08
  5. Interpolation Samples Vray
    Por liberado en el foro Plugins
    Respuestas: 3
    Último mensaje: 27-06-2005, 16:58

Actualmente estos son sus permisos de publicación en el foro.

  • -No puedes crear nuevos temas al no estar registrado o no haber iniciado sesión en el foro.
  • -No puedes responder temas al no estar registrado o no haber iniciado sesión en el foro.
  • -No puedes subir archivos adjuntos al no estar registrado o no haber iniciado sesión en el foro.
  • -No puedes editar tus mensajes al no estar registrado o no haber iniciado sesión en el foro.
  •