SlideShare une entreprise Scribd logo
1  sur  8
Télécharger pour lire hors ligne
Introduction
to
Open Shading Language
Prabindh Sundareson
Introduction
●OSL was developed at Sony Imageworks, for use
in its rendering pipelines for movies.
●It is a shader description language, built out of
LLVM infrastructure.
Why OSL
● To be able to replicate the behaviour of pre-recorded
BRDF using instruments like the Gonioreflectometer.
● Once recorded, these BRDFs can be replicated almost
accurately in the rendered scene
● More flexible representation of properties of surfaces
The OSL shader
● In OSL, shaders do not calculate color output per pixel, but
define a function that returns a surface, displacement,
volume or define a new generic shader
● Reflectance and Transmittance of surfaces are modelled
as functions, or "Closures"
● These shaders are evaluated during the rendering phase
Open Shading Language
● OSL's surface and volume shaders compute an explicit
symbolic description, called a "closure", of the way a
surface or volume scatters light, in units of radiance
● These radiance closures may be evaluated in particular
directions, sampled to find important directions, or saved
for later evaluation and re-evaluation (by component
blocks called as "Integrators")
– From "Larry Gritz, OSL_Introduction"
Example Surface Shader
● A sample surface shader looks like below:
surface
test (string noisename = "gabor", float freq = 5, output color Cout =
0)
{
point p = P*freq * (1.0+10*v*v) * (1.0+10*u*u);
float n = noise(noisename, p[0], p[1]);
cout = n * 0.5 + 0.5;
}
Sample Scenes built out of OSL
● Some examples are to be found in chocofur.com
(http://store.chocofur.com/exterior-scene-01), that look
amazingly realistic
Source Code and More Details
● The source code for OSL is provided under a liberal New
BSD license, at,
● https://github.com/imageworks/OpenShadingLangua
ge

Contenu connexe

Tendances

Tendances (20)

Concrete mix design using copper slag as fine aggregate
Concrete mix design using copper slag as fine aggregateConcrete mix design using copper slag as fine aggregate
Concrete mix design using copper slag as fine aggregate
 
LITRACON Light Transmitting Concrete
LITRACON Light Transmitting ConcreteLITRACON Light Transmitting Concrete
LITRACON Light Transmitting Concrete
 
Transparent concrete
Transparent concreteTransparent concrete
Transparent concrete
 
Ecofriendly material GYPSUM BOARDS
Ecofriendly material GYPSUM BOARDSEcofriendly material GYPSUM BOARDS
Ecofriendly material GYPSUM BOARDS
 
Underpinning
UnderpinningUnderpinning
Underpinning
 
Pavimentos i
Pavimentos iPavimentos i
Pavimentos i
 
REPORT ON PLASTERING
REPORT ON PLASTERINGREPORT ON PLASTERING
REPORT ON PLASTERING
 
Light Weight Concrete;High Density Concrete;High Performance Concrete by Dr.V...
Light Weight Concrete;High Density Concrete;High Performance Concrete by Dr.V...Light Weight Concrete;High Density Concrete;High Performance Concrete by Dr.V...
Light Weight Concrete;High Density Concrete;High Performance Concrete by Dr.V...
 
Mivan form wok - aluminium formwork shuttering tecnology
Mivan form wok - aluminium formwork shuttering tecnologyMivan form wok - aluminium formwork shuttering tecnology
Mivan form wok - aluminium formwork shuttering tecnology
 
Light emitting concrete [OR] Translucent concrete
Light emitting concrete [OR] Translucent concreteLight emitting concrete [OR] Translucent concrete
Light emitting concrete [OR] Translucent concrete
 
Construction Materials
Construction MaterialsConstruction Materials
Construction Materials
 
Visible concrete
Visible concreteVisible concrete
Visible concrete
 
Dense bituminous macadam
Dense bituminous macadamDense bituminous macadam
Dense bituminous macadam
 
Concrete Mix Design By Packing Density Method
Concrete Mix Design By Packing Density MethodConcrete Mix Design By Packing Density Method
Concrete Mix Design By Packing Density Method
 
flexural behaviour of ferrocement
flexural behaviour of ferrocementflexural behaviour of ferrocement
flexural behaviour of ferrocement
 
preparacion del hormigon
preparacion del hormigonpreparacion del hormigon
preparacion del hormigon
 
Underwater Repair (RR&S)
Underwater Repair (RR&S) Underwater Repair (RR&S)
Underwater Repair (RR&S)
 
Muros de contencion
Muros de contencionMuros de contencion
Muros de contencion
 
Librodeslizamientost2 cap3
Librodeslizamientost2 cap3Librodeslizamientost2 cap3
Librodeslizamientost2 cap3
 
Damp proof course
Damp proof courseDamp proof course
Damp proof course
 

En vedette

Order management, provisioning and activation
Order management, provisioning and activationOrder management, provisioning and activation
Order management, provisioning and activation
VijayIndra Shekhawat
 

En vedette (15)

Technology, Innovation - A Perspective
Technology, Innovation - A PerspectiveTechnology, Innovation - A Perspective
Technology, Innovation - A Perspective
 
GFX Part 4 - Introduction to Texturing in OpenGL ES
GFX Part 4 - Introduction to Texturing in OpenGL ESGFX Part 4 - Introduction to Texturing in OpenGL ES
GFX Part 4 - Introduction to Texturing in OpenGL ES
 
GFX Part 6 - Introduction to Vertex and Fragment Shaders in OpenGL ES
GFX Part 6 - Introduction to Vertex and Fragment Shaders in OpenGL ESGFX Part 6 - Introduction to Vertex and Fragment Shaders in OpenGL ES
GFX Part 6 - Introduction to Vertex and Fragment Shaders in OpenGL ES
 
John Carmack talk at SMU, April 2014 - Virtual Reality
John Carmack talk at SMU, April 2014 - Virtual RealityJohn Carmack talk at SMU, April 2014 - Virtual Reality
John Carmack talk at SMU, April 2014 - Virtual Reality
 
GFX Part 3 - Vertices and interactions in OpenGL
GFX Part 3 - Vertices and interactions in OpenGLGFX Part 3 - Vertices and interactions in OpenGL
GFX Part 3 - Vertices and interactions in OpenGL
 
GFX Part 5 - Introduction to Object Transformations in OpenGL ES
GFX Part 5 - Introduction to Object Transformations in OpenGL ESGFX Part 5 - Introduction to Object Transformations in OpenGL ES
GFX Part 5 - Introduction to Object Transformations in OpenGL ES
 
GFX Part 7 - Introduction to Rendering Targets in OpenGL ES
GFX Part 7 - Introduction to Rendering Targets in OpenGL ESGFX Part 7 - Introduction to Rendering Targets in OpenGL ES
GFX Part 7 - Introduction to Rendering Targets in OpenGL ES
 
GFX Part 1 - Introduction to GPU HW and OpenGL ES specifications
GFX Part 1 - Introduction to GPU HW and OpenGL ES specificationsGFX Part 1 - Introduction to GPU HW and OpenGL ES specifications
GFX Part 1 - Introduction to GPU HW and OpenGL ES specifications
 
IEEE - Consumer Electronics Trends Opportunities (2015)
IEEE - Consumer Electronics Trends Opportunities (2015)IEEE - Consumer Electronics Trends Opportunities (2015)
IEEE - Consumer Electronics Trends Opportunities (2015)
 
OpenGL Shading Language
OpenGL Shading LanguageOpenGL Shading Language
OpenGL Shading Language
 
Neo4j Spatial - GIS for the rest of us.
Neo4j Spatial - GIS for the rest of us.Neo4j Spatial - GIS for the rest of us.
Neo4j Spatial - GIS for the rest of us.
 
OSM- An Introduction
OSM- An IntroductionOSM- An Introduction
OSM- An Introduction
 
Order management, provisioning and activation
Order management, provisioning and activationOrder management, provisioning and activation
Order management, provisioning and activation
 
Osi model
Osi modelOsi model
Osi model
 
OSI Model
OSI ModelOSI Model
OSI Model
 

Plus de Prabindh Sundareson

Plus de Prabindh Sundareson (20)

Synthetic Data and Graphics Techniques in Robotics
Synthetic Data and Graphics Techniques in RoboticsSynthetic Data and Graphics Techniques in Robotics
Synthetic Data and Graphics Techniques in Robotics
 
Work and Life
Work and Life Work and Life
Work and Life
 
GPU Algorithms and trends 2018
GPU Algorithms and trends 2018GPU Algorithms and trends 2018
GPU Algorithms and trends 2018
 
Machine learning in the Indian Context - IEEE talk at SRM Institute
Machine learning in the Indian Context - IEEE talk at SRM InstituteMachine learning in the Indian Context - IEEE talk at SRM Institute
Machine learning in the Indian Context - IEEE talk at SRM Institute
 
Students Hackathon - 2017
Students Hackathon - 2017Students Hackathon - 2017
Students Hackathon - 2017
 
ICCE Asia 2017 - Program Outline
ICCE Asia 2017 - Program OutlineICCE Asia 2017 - Program Outline
ICCE Asia 2017 - Program Outline
 
Call for Papers - ICCE Asia 2017
Call for Papers - ICCE Asia 2017Call for Papers - ICCE Asia 2017
Call for Papers - ICCE Asia 2017
 
GFX part 8 - Three.js introduction and usage
GFX part 8 - Three.js introduction and usageGFX part 8 - Three.js introduction and usage
GFX part 8 - Three.js introduction and usage
 
GFX Part 2 - Introduction to GPU Programming
GFX Part 2 - Introduction to GPU ProgrammingGFX Part 2 - Introduction to GPU Programming
GFX Part 2 - Introduction to GPU Programming
 
GFX2014 OpenGL ES Quiz
GFX2014 OpenGL ES QuizGFX2014 OpenGL ES Quiz
GFX2014 OpenGL ES Quiz
 
Gfx2014 Graphics Workshop - Lab manual
Gfx2014 Graphics Workshop - Lab manualGfx2014 Graphics Workshop - Lab manual
Gfx2014 Graphics Workshop - Lab manual
 
Render to Texture with Three.js
Render to Texture with Three.jsRender to Texture with Three.js
Render to Texture with Three.js
 
ANGLE on Windows for OpenGLES2.0
ANGLE on Windows for OpenGLES2.0ANGLE on Windows for OpenGLES2.0
ANGLE on Windows for OpenGLES2.0
 
Yocto usage for Graphics SDK on AM335x
Yocto usage for Graphics SDK on AM335xYocto usage for Graphics SDK on AM335x
Yocto usage for Graphics SDK on AM335x
 
Gfx2013 lab manual
Gfx2013 lab manualGfx2013 lab manual
Gfx2013 lab manual
 
ARM Linux Embedded memory protection techniques
ARM Linux Embedded memory protection techniquesARM Linux Embedded memory protection techniques
ARM Linux Embedded memory protection techniques
 
Qt5 (minimal) on beaglebone, with Yocto
Qt5 (minimal) on beaglebone, with YoctoQt5 (minimal) on beaglebone, with Yocto
Qt5 (minimal) on beaglebone, with Yocto
 
Moksha - HTML5/CSS with Qt5+Snowshoe on AM335x
Moksha - HTML5/CSS with Qt5+Snowshoe on AM335xMoksha - HTML5/CSS with Qt5+Snowshoe on AM335x
Moksha - HTML5/CSS with Qt5+Snowshoe on AM335x
 
Qt5.0.0 eglfs abort issue
Qt5.0.0 eglfs abort issueQt5.0.0 eglfs abort issue
Qt5.0.0 eglfs abort issue
 
Cache profiling on ARM Linux
Cache profiling on ARM LinuxCache profiling on ARM Linux
Cache profiling on ARM Linux
 

Dernier

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Dernier (20)

Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 

Open Shading Language (OSL)

  • 2. Introduction ●OSL was developed at Sony Imageworks, for use in its rendering pipelines for movies. ●It is a shader description language, built out of LLVM infrastructure.
  • 3. Why OSL ● To be able to replicate the behaviour of pre-recorded BRDF using instruments like the Gonioreflectometer. ● Once recorded, these BRDFs can be replicated almost accurately in the rendered scene ● More flexible representation of properties of surfaces
  • 4. The OSL shader ● In OSL, shaders do not calculate color output per pixel, but define a function that returns a surface, displacement, volume or define a new generic shader ● Reflectance and Transmittance of surfaces are modelled as functions, or "Closures" ● These shaders are evaluated during the rendering phase
  • 5. Open Shading Language ● OSL's surface and volume shaders compute an explicit symbolic description, called a "closure", of the way a surface or volume scatters light, in units of radiance ● These radiance closures may be evaluated in particular directions, sampled to find important directions, or saved for later evaluation and re-evaluation (by component blocks called as "Integrators") – From "Larry Gritz, OSL_Introduction"
  • 6. Example Surface Shader ● A sample surface shader looks like below: surface test (string noisename = "gabor", float freq = 5, output color Cout = 0) { point p = P*freq * (1.0+10*v*v) * (1.0+10*u*u); float n = noise(noisename, p[0], p[1]); cout = n * 0.5 + 0.5; }
  • 7. Sample Scenes built out of OSL ● Some examples are to be found in chocofur.com (http://store.chocofur.com/exterior-scene-01), that look amazingly realistic
  • 8. Source Code and More Details ● The source code for OSL is provided under a liberal New BSD license, at, ● https://github.com/imageworks/OpenShadingLangua ge