6.8.2  Parámetros y Métodos para el Muestreo

Los efectos de media se calculan haciendo un muestreo a lo largo de la trayectoria del rayo. Se utiliza un método llamado integración Monte Carlo. El identificador intervals se puede utilizar para especificar, en forma de entero, el número intervalos usado para hacer el muestreo del rayo. El número de intervalos por defecto es 10. Para el medio en un objeto los intervalos se extienden entre los puntos de entrada y salida mientras el rayo pasa a través del objeto contenedor. Para el medio en la atmósfera, los intervalos abarcan el rayo en toda su longitud, desde su inicio hasta que impacta en un objeto. Para los tipos de medio que interactúan con focos (spotlights) o luces cilíndricas, los intervalos que no están iluminados por estas luces se ponderan de forma de forma distinta a los intervalos que sí lo están en el momento de distribuir los muestreos.

El identificador ratio distribuye los intervalos de forma diferente entre las áreas con o sin luz. El valor por defecto de ratio 0.9 significa que los intervalos iluminados reciben más muestreos que los intervalos sin iluminar. Hay que tener en cuenta que el número total de intervalos debe exceder el número de intervalos iluminados. Si un rayo pasa dentro y fuera de 8 focos pero se han especificado sólo 5 intervalos, ocurrirá un error.

El identificador samples Min, Max especifica el número mínimo y máximo de muestreos tomados por cada intervalo. Los valores por defecto son samples 1,1.

Tal como se muestrea cada intervalo, se computa la discrepancia. Si la discrepancia se encuentra por debajo del valor umbral, entonces no serán necesarios más muestreos. Los identificadores variance y confidence especifican la discrepancia tolerable para garantizar de que se está dentro de esa discrepancia. Los cálculos exactos son bastante complejos e implican pruebas de tipo chi-cuadrado (chi-squared) y otros principios estadísticos demasiado complicados para describirlos aquí. Los valores por defecto son variance 1.0/128 y confidence 0.9. Para resultados más lentos pero más precisos, hay que decrecer variance e incrementar confidence.

Nota: el número máximo de muestreos limita los cálculos incluso si los valores propiamente dichos de variance y confidence no se alcanzan nunca.

El identificador method permite especificar cuál de los tres métodos de muestreo que proporciona POV-Ray se va a usar. El método 1 es el método descrito arriba.

El método 2 distribuye los muestreos de forma uniforme a lo largo de la línea de visión o del rayo de luz. Éste último, en ocasiones, puede hacer que la cosas parezcan más suavizadas. Si se especifica un valor en max samples mayor que el número de muestreos mínimo, POV tomará muestreos adicionales, pero de forma aleatoria, del mismo modo que en el método 1. Por lo tanto es aconsejable establecer el valor de max samples igual al mínimo de muestreos. jitter hace que el método 2 se asemeje al método 1. Debe ir seguido de un número en coma flotante, y un valor de 1 hará que los muestreos oscilen entre el rango total de muestreos.

El método 3 de muestreo emplea muestreo adaptativo [adaptive] (parecido al suavizado de bordes [anti-aliasing] adaptativo) el cual es muy similar al método de muestreo utilizado en atmosphere en POV-Ray 3.0. Sin embargo, este código fue escrito en su totalidad para funcionar con media.

El muestreo adaptativo funciona tomando otra muestra entre dos muestras ya existentes, si hay demasiada variación entre las dos muestras originales. Esto conduce a que sean tomadas menos muestras en zonas donde el efecto de media se mantiene constante. El muestreo adaptativo sólo se produce si el mínimo de muestras está estipulado en 3 o más.

Se puede especificar la profundidad de recursión en el suavizado de bordes utilizando el identificador aa_level seguido de un entero. Se puede especificar el umbral de suavizado de bordes usando aa_threshold seguido de un número en coma flotante. El valor por defecto para aa_level es 4, y para aa_threshold es 0.1. jitter también funciona con el método 3. El método 3 de muestreo ignora el valor máximo de muestreos. Normalmente es mejor utilizar sólo un intervalo con el método 3. Demasiados intervalos pueden llevar a artefactos, y POV creará más intervalos si los necesita.