Open Shading Language

{{Short description|Programming language for rendering images}}

{{distinguish|OpenGL Shading Language}}

{{Infobox software

| name = Open Shading Language (OSL)

| logo = File:Open Shading Language logo.png

| logo alt = Open Shading Language logo

| developer = Academy Software Foundation

| released =

| latest release version = 1.12.13.0

| latest release date = {{Start date and age|2023|07|01|df=yes}}{{Cite web|url=https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/releases|title=OpenShadingLanguage Releases|website=GitHub}}

| genre = Shading language

| license = BSD license 3-clause

| website = {{URL|https://github.com/AcademySoftwareFoundation/OpenShadingLanguage|github/OpenShadingLanguage}}

}}

Open Shading Language (OSL) is a shading language developed by Sony Pictures Imageworks, a Canadian visual effects and computer animation studio headquartered in Vancouver, British Columbia and Montreal, Quebec, with an additional office on the Sony Pictures Studios lot in Culver City, California, a unit of Sony Pictures Entertainment's Motion Picture Group, which through an intermediate holding company called Sony Film Holding Inc., it is operated as a subsidiary of Sony Entertainment Inc., which is itself a subsidiary of the Japanese multinational technology and media conglomerate Sony Group Corporation, for use in its Arnold Renderer. It is also supported by Illumination Research's 3Delight renderer,{{Cite web|title = OSLin 3Delight|url=https://3delight.atlassian.net/wiki/display/3DSP/OSL+in+3Delight|website=www.3delight.com|accessdate=2020-01-26}} Otoy's Octane Render,{{Cite web|title = Octane Render OSL Support|url=https://home.otoy.com/render/octane-render/features/|website=home.otoy.com|accessdate=2019-12-27}} V-Ray 3,{{Cite web|title = V-Ray OSL Support|url=https://docs.chaosgroup.com/display/VRAY3MAX/OSL+Support|website=docs.chaosgroup.com|accessdate=2016-09-13}} Redshift (from April 2021),{{Cite web|url=https://www.maxon.net/en/article/latest-redshift-release-features-support-for-opencolorio-2-0-1|title=Latest Redshift Release Features Support for OpenColorIO 2.0.1|accessdate=2022-04-27}} and the Cycles render engine in Blender (starting with Blender 2.65).{{Cite web|url=https://archive.blender.org/wiki/index.php/Dev:Ref/Release_Notes/2.65/Cycles/|title=Blender 2.65: Cycles|accessdate=2020-02-09}} 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.

RenderMan has limited OSL support that is used only for patterns; i.e. without any material closure (shading) functionality.{{Cite web|url=https://rmanwiki-26.pixar.com/space/REN26/19661571/OSL+Patterns|title=OSL Patterns |accessdate=2025-02-16}} It is modified there for better AVX2 and AVX-512 instruction set support with doubled performance.{{Cite web|url=https://de.slideshare.net/IntelSoftware/renderman-the-role-of-open-shading-language-osl-with-intel-advanced-vector-extensions|title = RenderMan*: The Role of Open Shading Language (OSL) with Intel® Advan…|date = 12 August 2019}}{{Cite web|url=https://techdecoded.intel.io/resources/turbo-charged-open-shading-language-on-intel-xeon-processors-with-intel-advanced-vector-extensions-512/#gs.18ur7n|title = Technical Articles and How-Tos}}

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.{{Cite web|url=https://github.com/AcademySoftwareFoundation/OpenShadingLanguage/blob/master/CHANGES.md|title=Open Shading Language|website=GitHub|date=7 April 2022}} 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.

Origin

Larry Gritz explain origin of Open Shading Language:

{{Blockquote|text=

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'.{{cite journal|url=https://dl.acm.org/doi/10.1145/1837026.1837070 | title="SIGGRAPH 2010 Open Shading Language" | date=2010| doi=10.1145/1837026.1837070 | s2cid=27148401 }} And apparently, the rest of the industry agreed, because it resulted in an 2017 Academy technical achievement award.{{cite web| url=https://www.fxguide.com/quicktakes/the-2017-sci-tech-oscars/ | title="2017 Sci-Tech winners"

| date=2017}}

|source= email from Larry Gritz (2022.06.27) {{citation needed|date=January 2022}}}}

Movies

Many movies made in 2012 or later have used OSL,{{Cite web|url=https://github.com/imageworks/OpenShadingLanguage/#user-content-where-osl-has-been-used|title=Where OSL has been used|website=GitHub|access-date=2020-02-29}} including:

= 2017 =

= 2018 =

  • Peter Rabbit
  • Black Panther
  • Annihilation
  • Red Sparrow
  • Pacific Rim Uprising
  • Avengers Infinity War
  • Deadpool 2
  • Incredibles 2
  • Jurassic World: Fallen Kingdom
  • Hotel Transylvania 3: Summer Vacation
  • Ant Man and the Wasp
  • Skyscraper
  • Mission Impossible: Fallout
  • The Meg
  • Kin
  • Smallfoot
  • Alpha
  • Venom
  • First Man
  • Bad Times at the El Royale
  • Fantastic Beasts: The Crimes of Grindelwald
  • Bohemian Rhapsody
  • Holmes and Watson
  • Spider-Man: Into the Spider-Verse

= 2019 =

  • The Kid Who Would Be King
  • Alita: Battle Angel
  • Lego Movie 2
  • Lucky 13 (an episode of Love, Death & Robots)
  • Captain Marvel
  • Triple Frontier
  • Avengers: Endgame
  • Pokémon Detective Pikachu
  • Godzilla: King of Monsters
  • Rim of the World
  • John Wick 3 Parabellum
  • Men in Black International
  • Toy Story 4
  • Spider-Man: Far From Home
  • Hobbs & Shaw
  • Angry Birds 2
  • The Art of Racing in the Rain
  • Secret Life of Pets
  • The Mandalorian (S1)
  • The Dark Crystal: Age of Resistance
  • The King
  • Jumanji: The Next Level
  • Richard Jewell
  • Game of Thrones (S8)
  • Lost in Space (S1)
  • Togo

= 2020 =

  • Underwater
  • Birds of Prey
  • Onward
  • Bloodshot
  • Greyhound
  • The Old Guard
  • Mulan
  • Tenet
  • The New Mutants
  • Artemis Fowl
  • The Eight Hundred
  • Over the Moon
  • Wonder Woman 1984
  • Soul
  • The Mandalorian (S2)

= 2021 / upcoming =

  • Chaos Walking
  • Peter Rabbit 2: The Runaway
  • The Falcon and the Winter Soldier
  • Secret Magic Control Agency
  • Zack Snyder's Justice League
  • The Mitchells vs the Machines
  • Jupiter's Legacy
  • Luca
  • F9

See also

References

{{Reflist}}