This document provides an introduction to Open Shading Language (OSL), including:
- OSL was developed at Sony Imageworks to describe shaders for use in rendering pipelines for movies. It uses the LLVM infrastructure.
- OSL allows accurately replicating measured surface properties like BRDFs to flexibly represent surface properties in rendered scenes.
- In OSL, shaders define functions that return surface, displacement, volume properties or new shaders, rather than directly calculating pixel colors. Reflectance and transmittance are modeled as functions called "closures".
- OSL closures compute an explicit symbolic description of how surfaces or volumes scatter light, which can be evaluated, sampled
Related topics: