|
La sentencia media
se utiliza para especificar
partículas de materia suspendidas en un medio como agua o aire. Puede
utilizarse para precisar humo, bruma, niebla, gas, fuego, polvo, etc.
Anteriores versiones de POV-Ray tenían dos sistemas incompatibles
para generar estos efectos. Uno era halo
para los
efectos en el interior de objetos transparentes o semi-transparentes.
El otro era atmosphere
para los efectos que impregnaban
la escena en su totalidad. Esta duplicación de sistemas era compleja
e innecesaria. Tanto halo
como atmosphere
han sido suprimidos. Ver "¿Por qué
son necesarios Interior y Medio?" para más detalles respecto a
este cambio. Ver "El objeto Medio"
para detalles de cómo utilizar media
con los objetos.
Ver "Medio Atmosférico"
para detalles sobre el uso de media
para efectos
atmosféricos en el exterior de los objetos. Esta sección y las
siguientes sub-secciones explican los detalles de las diversas
opciones de media
, las cuales son útiles tanto para el
medio en relación con el objeto como para el medio en la
atmósfera.
El medio funciona haciendo un muestreo de las partículas en
un número de puntos específico a lo largo de la trayectoria del rayo.
También se toman sub-muestreos hasta alcanzar un determinado nivel de
fiabilidad. POV-Ray proporciona tres métodos de muestreo. Cuando se
utiliza en la sentencia interior
de un objeto, el
muestreo sólo ocurre dentro del objeto. Cuando se utiliza en
medio atmosférico, los muestreos van desde la localización de la cámara
hasta que el rayo impacta en un objeto. Por lo tanto, para efectos
localizados lo mejor es utilizar un objeto envolvente, incluso aunque
el patrón de densidad sólo pueda producir resultados en un área
pequeña, se trate de un medio cerrado o no.
La sintaxis completa para la sentencia media
es como
sigue:
MEDIA: media { [IDENTIFICADOR_MEDIA] [ELEMENTO_MEDIA...] } MEDIA_ITEMS: method Número | intervals Número | samples Min, Max | confidence Valor | variance Valor | ratio Valor | absorption COLOR | emission COLOR | aa_threshold Valor | aa_level Valor | scattering { Type, COLOR [ eccentricity Valor ] [ extinction Valor ] } | density { [IDENTIFICADOR_DENSIDAD] [TIPO_PATRÓN] [MODIFICADOR_DENSIDAD...] } | TRANSFORMACIONES MODIFICADOR_DENSIDAD: MODIFICADOR_PATRÓN | LISTA_DENSIDAD | LISTA_COLOR | color_map { CUERPO_MAPA_COLOR } | colour_map { CUERPO_MAPA_COLOR } | density_map { CUERPO_MAPA_DENSIDAD }
aa_level : 4 aa_threshold : 0.1 absorption : <0,0,0> confidence : 0.9 emission : <0,0,0> intervals : 10 method : 3 ratio : 0.9 samples : Min 1, Max 1 variance : 1/128 SCATTERING COLOR : <0,0,0> eccentricity : 0.0 extinction : 1.0
En caso de especificar un identificador de media
, éste
debe ser el primer elemento. Todos los demás elementos del medio
pueden ser especificados en cualquier orden. Todos son opcionales.
Puedes tener múltiples sentencias density
en una única
sentencia media
. Ver "Densidad múltiple frente a
múltiples medios" para más detalles. Las transformaciones sólo se
aplican a las sentencias density
que ya han sido
especificadas. Cualquier density
posterior a una
transformación no se verá afectado. Si media
no tiene
sentencias density
y tampoco se han especificado en otro
identificador de media, la transformación no tendrá efecto. El resto de
los elementos de media, excepto density
y las
transformaciones, anulan los valores por defecto o cualquier otro
valor previamente establecido en esa sentencia media
..
Nota: algunos efectos de media
requieren fuentes de luz. Sin embargo, la participación de una fuente
de luz va en función de los identificadores media_interaction
y media_attenuation
. Ver "Interacción con el medio atmosférico" y "Atenuación atmosférica"
para más detalles.
Nota: La documentación de POV-Ray 3.1 decía:
"Quede constancia de un extraño efecto secundario que fue descubierto durante la fase de pruebas y que era demasiado complicado para arreglarlo. Si el objeto contenedor empleaEsto ya no pasa en POV-Ray 3.5. Si especificastransmit
en vez defilter
para la transparencia,media
no proyecta sombras."
transmit
o filter
para crear un objeto contenedor transparente, media
siempre proyectará una sombra. Si no se desea la sombra, hay que
utilizar el modificador no_shadow
en el objeto contenedor.
|
|