RenderMan Shading Language

RenderMan Shading Language (abrégé en RSL, en français langage d'ombrage RenderMan) est un composant de RenderMan Interface Specification qui est utilisé pour définir des shaders. La syntaxe du langage est de type C.

Un shader écrit en RSL peut être utilisé sans modification sur n'importe quel moteur de rendu 3D conforme à RenderMan, tel que PhotoRealistic RenderMan de Pixar, 3Delight (en) de DNA Research, Air de Sitexgraphics ou une solution open source telle que Pixie (en) ou Aqsis (en).

RenderMan Shading Language définit des fonctions autonomes et cinq types de shaders : shaders de surface, de lumière, de volume, imageur et de déplacement.

Un exemple de shader de surface qui définit une surface métallique est :

surface metal (float Ka = 1; float Ks = 1; float roughness = 0.1;)
{
  normal Nf = faceforward (normalize(N), I);
  vector V = - normalize (I);
  Oi = Os;
  Ci = Os * Cs * (Ka * ambient() + Ks * specular (Nf, V, roughness));
}

Les shaders réalisent leur travail en lisant en en écrivant des variables spéciales telles que Cs (couleur de surface), N (normale en un point donné) et Ci (couleur de surface finale). Les arguments des shaders sont des paramètres globaux qui sont attachés aux objets du modèle (et donc un shader de métal peut être utilisé pour différents métaux). Les shaders n'on pas de valeur de retour, mais des fonctions peuvent être définies, qui prennent des arguments en entrée et retournent une valeur. Par exemple, la fonction suivante calcule la longueur d'un vecteur avec l'opérateur produit scalaire "." :

float length (vector v) {
  return sqrt (v . v); /* . is a dot product */
}

Voir aussi

Bibliographie

  • (en) Steve Upstill, The RenderMan companion : a programmer's guide to realistic computer graphics, Reading, Mass, Addison-Wesley, (ISBN 0-201-50868-0, lire en ligne)
  • (en) Anthony Apodaca et Larry Gritz, Advanced RenderMan : creating CGI for motion pictures, San Francisco, Morgan Kaufmann, (ISBN 1-55860-618-1, lire en ligne)
  • (en) Rudy Cortes et Saty Raghavachary, The RenderMan shading language guide, Boston, Mass, Thomson Course Technology, (ISBN 1-59863-286-8)

Liens externes

  • Shading Language (RSL) documentation
v · m
Pixar Animation Studios
The Walt Disney Company
Longs métrages
  • Article de qualité Toy Story (1995)
  • 1 001 Pattes (1998)
  • Toy Story 2 (1999)
  • Monstres et Cie (2001)
  • Le Monde de Nemo (2003)
  • Les Indestructibles (2004)
  • Cars (2006)
  • Bon article Ratatouille (2007)
  • WALL-E (2008)
  • Là-haut (2009)
  • Toy Story 3 (2010)
  • Cars 2 (2011)
  • Rebelle (2012)
  • Monstres Academy (2013)
  • Vice-versa (2015)
  • Le Voyage d'Arlo (2015)
  • Le Monde de Dory (2016)
  • Cars 3 (2017)
  • Coco (2017)
  • Les Indestructibles 2 (2018)
  • Toy Story 4 (2019)
  • En avant (2020)
  • Soul (2020)
  • Luca (2021)
  • Alerte rouge (2022)
  • Buzz l'Éclair (2022)
  • Élémentaire (2023)
  • Vice-versa 2 (2024)
Films à venir :
Film inachevé :
  • Newt (2008 — décommandé)
Courts métrages
Créations
originales
Dérivés des
longs métrages
Séries
  • Cars Toon (2008-2014)
  • Monstres et Cie : Au travail (2021- )
  • Bienvenue chez Doug (2021- )
  • Cars : Sur la route (2022)
Séries à venir :
  • Win or lose (2024)
  • Dream productions (2025)
Univers
Personnages
Autres
Personnalités
Produits
Divers
  • icône décorative Portail de l’imagerie numérique
  • icône décorative Portail sur Disneysection Pixar