Developer(s) | Academy Software Foundation |
---|---|
Stable release | 1.12.13.0
/ 1 July 2023[1] |
Repository | |
Type | Shading language |
License | BSD license 3-clause |
Website | github/OpenShadingLanguage |
Open Shading Language (OSL) is a shading language developed by Sony Pictures Imageworks for use in its Arnold Renderer. It is also supported by Illumination Research's 3Delight renderer,[2] Otoy's Octane Render,[3] V-Ray 3,[4] Redshift (from April 2021),[5] and the Cycles render engine in Blender (starting with Blender 2.65).[6] OSL's surface and volume shaders define how surfaces or volumes scatter light in a way that allows for importance sampling; thus, it is well suited for physically based renderers that support ray tracing and global illumination.
In RenderMan, OSL is also an important module. It is modified there for better AVX2 and AVX-512 instruction set support with doubled performance.[7][8]
Release 1.12 supports C++14 as default, but also newer C++17 and C++20. OpenImageIO support will be dropped for 2.0 with support of 2.2. Minimum OpenEXR Version changes up to 2.3. SIMD Batch shader Mode and OptiX support are in development and experimental. CUDA 11 and OptiX 7.1 are here supported levels.[9] 1.12.6 is supported in Blender 3.4. 1.12.6.2 is the first new release of the 1.12 series with a stable API. 1.12.13 is the current version.
Larry Gritz explain origin of Open Shading Language:
We had a renderer (Sony Imageworks's fork of the Arnold renderer) where shaders were implemented as C++ plugins, and that had many problems. We desired a shading language for the renderer, and this is the one I designed. In addition to just wanting a language, we also sought to make many improvements over previous shading languages. We explained a lot of the details about the new ideas in this SIGGRAPH 2010 talk 'Open Shading Language'.[10] And apparently, the rest of the industry agreed, because it resulted in an 2017 Academy technical achievement award.[11]
— email from Larry Gritz (2022.06.27) [citation needed]
Many movies made in 2012 or later have used OSL,[12] including: