El lenguaje de sombreado de Renderman (abreviado RSL) es un componente de la especificación de interfaz de RenderMan y se utiliza para definir sombreadores . La sintaxis del lenguaje es similar a C .
Un sombreador escrito en RSL se puede usar sin cambios en cualquier renderizador compatible con RenderMan, como PhotoRealistic RenderMan de Pixar , 3Delight de DNA Research, Air de Sitexgraphics o una solución de código abierto como Pixie o Aqsis .
El lenguaje de sombreado RenderMan define funciones independientes y cinco tipos de sombreadores: sombreadores de superficie, luz, volumen, generador de imágenes y de desplazamiento.
Un ejemplo de un sombreador de superficie que define una superficie de metal es:
superficie del metal ( flotador Ka = 1 ; flotador Ks = 1 ; rugosidad del flotador = 0.1 ;) { normal Nf = cara hacia adelante ( normalizar ( N ), I ); vector V = - normalizar ( I ); Oi = Os ; Ci = Os * Cs * ( Ka * ambiente () + Ks * especular ( Nf , V , rugosidad )); }
Los sombreadores expresan su trabajo leyendo y escribiendo variables especiales como Cs (color de la superficie), N (normal en un punto dado) y Ci (color de la superficie final). Los argumentos de los sombreadores son parámetros globales que se adjuntan a los objetos del modelo (por lo que se puede usar un sombreador de metal para diferentes metales, etc.). Los sombreadores no tienen valores de retorno, pero se pueden definir funciones que toman argumentos y devuelven un valor. Por ejemplo, la siguiente función calcula la longitud del vector mediante el operador de producto escalar ".":
longitud flotante ( vector v ) { return sqrt ( v . v ); / *. es un producto escalar * / }
Otras lecturas
- Upstill, Steve (1990). El compañero de RenderMan: una guía del programador para gráficos de computadora realistas . Lectura, Misa: Addison-Wesley. ISBN 0-201-50868-0.
- Apodaca, Anthony ; Gritz, Larry (1999). RenderMan avanzado: creación de CGI para películas . San Francisco: Morgan Kaufmann. ISBN 1-55860-618-1.
- Cortés, Rudy; Raghavachary, Saty (2008). La guía del lenguaje de sombreado de RenderMan . Boston, Mass: Thomson Course Technology. ISBN 1-59863-286-8.