public interface SShader
Modifier and Type | Method and Description |
---|---|
double |
evaluateRefractiveIndex(SVector3d position)
Méthode pour évaluer l'indice de réfraction associé à un point de l'espace.
|
SColor |
shade(SRay ray)
Méthode qui détermine la couleur associée à un rayon ayant effectué une intersection avec une géométrie de la scène.
|
SColor shade(SRay ray) throws SRuntimeException
ray
- - Le rayon ayant réalisé une intersection.SRuntimeException
- Si le rayon a déjà été intersecté péalablement.double evaluateRefractiveIndex(SVector3d position)
1) Si la position est située à la frontière d'une géométrie (sur la surface), elle sera considérée comme à l'extérieure de la géométrie et l'indice n = 1.0 sera affecté.
2) Si la position est située dans une géométrie, il faudra obtenir son indice de réfraction n s'il possède une primitive comme parent, sinon n = 1.0 sera affecté.
3) Si la position est située dans plusieurs géométrie, NOUS AVONS PRÉSENTEMENT UN PROBLÈME !!! qui devra être résolu dans le futur.
position
- - La position dans l'espace des géométries.