Shadeop es un término utilizado en la representación de gráficos por computadora para referirse a una función atómica incorporada utilizada en un sombreador .
Es un acrónimo que mezcla los términos sombreado y operación .
El término se utiliza específicamente en el contexto de sombreadores escritos en el lenguaje de sombreado RenderMan (RSL) para su uso con renderizadores compatibles con RenderMan .
Las funciones definidas por el usuario escritas en RSL se denominan simplemente "funciones". Por lo tanto, el uso del término sirve principalmente para distinguir este último tipo de las funciones de tipo incorporado.
RSL también permite cargar complementos binarios escritos en C y tratarlos como shadeops integrados. Estos se conocen comúnmente como DSO shadeops . Dos implementaciones de RenderMan, 3Delight y PhotoRealistic RenderMan , han agregado recientemente un nuevo tipo en los últimos años llamado RSL plugin shadeop . Este tipo usa una API de C++ más nueva , pero el usuario no puede distinguirlo del tipo anterior cuando lo llama desde un sombreador.
El siguiente sombreador de ejemplo hace uso de los shadeops integrados ambient() , spread() , faceforward() , normalize() y transform() así como del complemento RSL definido por el usuario checkerboard() .
complemento "tablero de ajedrez" ; checkmatte de superficie ( float Ka = 1 , Kd = 1 ;) { normal Nf = faceforward ( normalize ( N ), I ); patrón de color = tablero de ajedrez ( transformar ( "objeto" , P )); Oi = Os ; Ci = Oi * Cs * patrón * ( Ka * ambiente () + Kd * difuso ( Nf )); }