10 Classes With Project Files MP4
Title: FXPHD – RND301: Production Shader Writing Fundamentals and Physically Plausible Shading
Following the RND202 course “Renderman Techniques in Production”, this course dives deeper into the fundamentals of Shader Writing in the Renderman Shading Language (RSL), as well as the newer Physically Plausible shading in Renderman.
Technical Directors will find this course useful for expanding their shading knowledge in Renderman, by diving into the shaders and building them up step-by-step. Coming out of the course the student will be able to put into practice, in a production environment, building and using Renderman Shaders, as well as a deep understanding of Physically Plausible shading including Importance Sampling and Image Based Lighting. In addition, we cover the Phsyically Plausible shading library inside Renderman Studio 4 (for Maya), raytraced re-rendering technology, and a crash course on Renderman setup in Houdini.
Obretenov has worked in a variety of roles, designing and developing shading software for Walt Disney’s The Wild feature film, followed by shading and lighting for Superman Returns, Spider-Man 3, Beowulf, Christmas Carol, and Mars Needs Moms feature films.
The curriculum is broken up into three sections:
Part 1 – Production Shader Writing Fundamentals
We build up the shaders from scratch and explore the source code. Common Types of shaders used in production are Surface, Displacement & Volume. Building blocks are Loops, Functions, defines, Message-passing, AOVs & Custom primvars. We look at co-shaders: Differences between co-shaders and monolithic/traditional and Co-shader examples. We also look at noise functions in depth: Perlin, Worley, Voronoi and FBM
Part 2 – PRMan & Houdini “Crash Course”
We go through all the settings in getting your custom shaders into Houdini and the steup required to render in PRMan. We build a scene from scratch, go through the render man output driver. Work with shaders, bringing in Surface and Displacement, setting up “Materials”. Work with AVOs and Primvars: custom variables added to geo, read into shader. Looks at attributes: how to setup Renderman attributes on models and general output driver. Then look at examples: specular/diffuse/transmission visibilities, displacement bounds, trace depth, etc.
Part 3 – Physically Plausible Shading & Importance Sampling – In Depth
We dive in BRDFs, looking at the Definition, different types of BRDFs and Shader Source code samples and use. Then look at Importance Sampling and it’s Definition, Light vs BRDF, Examples and Source code in shaders.
Next we work with Physically Plausible, looking at the Definition, Energy Conservation, Fully raytracing paradigm, Biased-vs-unbiased, Path Tracing (uni and bidirectional), Shaders and source code exploration, Examples, Comparison to non physically-plausible and Plausible Shader constructed from scratch; explaining inclusion of each piece in plausible framework
We also work with Physically Plausible Library in Renderman Studio 4: Light and surface shaders: RMSGPSurface, RMSGILight, RMSEnvlight, RMSAreaLight, and others.
Educated at Simon Fraser University in Computing Science and Computer Graphics, Christos started contributing to the Animation and Film industry during “co-op” work terms at Mainframe Entertainment in conjunction with Simon Fraser University. He continued his career by designing and developing shading software for Walt Disney’s The Wild feature film, followed by shading and lighting for Superman Returns, Spider-Man 3, Beowulf, Christmas Carol, and Mars Needs Moms feature films. Recently co-founding LollipopShaders.com, Christos develops procedural solutions to shading and lighting, currently experimenting with Physically Plausible Shading and Image Based Lighting. He currently resides in Vancouver, BC, Canada.