vers l'index général de l'aide - vers l'index des matériaux

filter et transmit

objectif

Spécifier le degré de transparence filtrée ou non-filtrée d'une couleur.

compatibilité

POV-Ray 2.0+sup. (filter) POV-Ray 3.0+sup. (transmit, rgbft)

syntaxe

    pigment {Green filter .8}
    pigment {Green transmit .5}
    pigment {Green filter .2 transmit .3}
    pigment {rgbft <0,1,0,.2,.3>}
    

filter

Le mot clé filter donne à une couleur la propriété de laisser passer la lumière qui passe à travers une surface, tout en colorant à son tour cette lumière. Cela veut dire que si une lumière blanche passe à travers un objet filtrant jaune, les objets frappés par la lumière après le filtre seront éclairés en jaune. C'est également valable pour les objets vus (par la caméra) à travers un objet filtrant.

Le filtre observe les règles naturelles des mélanges de couleurs, ce qui veut dire qu'un objet rouge vu à travers un filtre bleu sera pratiquement noir.

effets de filter

transmit

Ce mot clé permet de spécifier une transparence non-filtrée, c'est-à-dire que même si les surfaces concernées laissent paraître ce qui se situe derrière elles, elles n'ont aucune influence sur la couleur de la lumière.

effets de transmit

inclusion dans <r,g,b>

Il est également possible de spécifier des valeurs de filter et transmit dans une "extension" du vecteur rgb, à l'aide de rgbf, rgbt, et rgbft.

    rgbf <1,1,0,.5> // = rgb <1,1,0> filter .5
    rgbt <1,1,0,.5> // = rgb <1,1,0> transmit .5
    rgbft <1,1,.5,.5> // = rgb <1,1,0>  filter .5 transmit .5
    

schéma récapitulatif

L'illustration ci-dessous montre 10*10 sphères ayant des valeurs de filter et de transmit variant de 0 à 1. Il faut faire deux observations :
- la transparence totale (objet "invisible") est atteinte avec transmit 1 filter 0
- lorsque la somme des deux valeurs excède 1, l'objet devient "lumineux", et fait passer davantage de lumière qu'il n'en reçoit, ce qui peut être utile pour modéliser une diode, ou d'autres choses...

combinaisons systématiques de filter et transmit

valeurs hors limites

Lorsque les valeurs de transmit excèdent la fourchette 0 - 1. Au delà de 1, les couleurs vues par transparence sont multipliées par la couleur et la valeur de l'objet filtrant, donnant un aspect "brûlé", saturé et contrasté aux éléments qui se trouvent derrière. Si la valeur de transmit est négative, les couleurs seront inversées comme sur un.. négatif !

Attention ! Si vous utilisez cette fonctionnalité pour pacer un filtre spécial quelque part dans votre scène, prenez soin d'affecter no_shadow à l'objet filtre, afin d'éviter le filtrage des rayons lumineux, qui donnerait des résultats bizarres.

remarques

Attention, lorsque vous utilisez beaucoup d'objets transparents, veillez à ajuster la variable max_trace_level (dans global_settings).

LA bourde universelle : donner une valeur de filter à une surface noire ! Ça ne marche pas ! Du noir transparent, ça n'existe pas ! En fait, les filter sont des opérations de multiplication, donc du noir (0) multiplié par n'importe quoi, ça donnera toujours du noir !

Par contre, transmit fonctionnera normalement avec du noir.

auteur : Fabien Mosen