Ever find yourself wanting to make a last minute topology change to a model but been frustrated by broken shaders? How about seeing the same shader across different apps and renderers? Need a new tool for render optimization? If so, checkout our course on shader interoperability! Pixar’s latest foray into this domain originated from Monster’s University’s “ptex proxy shader” system as a technique for shading level of detail and has evolved into a system to share our materials across OpenGL, Nvidia Optix, RenderMan REYES, and now RenderMan RIS rendering architectures. The main idea is to cache the pattern generation of an asset's shader (BRDF inputs) into a render friendly format and use these signals to drive a universal shader. Sounds easy enough, but what makes a format “render friendly”, and which is best? This course will cover the pro’s and con’s of various contenders, from primitive variables, to textures, PTex, brickmaps, Open VDB, etc.
Applications are vast. There’s optimization: shader baking can speed pattern generation, reduce primitive variables, facilitate BRDF consolidation and allow aggressive geometric LOD. Another area is hardware shading across apps: baked shading data can be GPU friendly, and easy to port to other systems. This applies to shading across software renderers too, as many have incompatible limitations on pattern generation (e.g. RenderMan REYES vs RIS) or BRDFs, which shader baking can help accommodate.
Finally, there’s the concept of helping maintain a “Digital Backlot”: baked shaders are easier to preserve across pipeline evolution. But it’s not all good news, storage limitation, context dependent patterns, and pipeline complexity can provide challenges. We’ll discuss what can be done to overcome these obstacles, so, whatever 3d software, renderers, or BRDFs you use, keep shader interoperability in mind for your future pipeline!
Level
Intermediate
Prerequisites
While the topic is intuitively relevant to computer graphics, I do use some jargon the audience should be familiar with, such as LOD, BRDF, “in-core” vs “out of core”, CPU/GPU, UV Parameterization, Shader, Displacement, Ray Tracing, and Rasterization. Those familiar with shading/rendering will likely keep up best.
Intended Audience
Computers Graphics practitioners of all stripes: from Technical Directors, to Pipeline Engineers, Shading Artists, Lighting Artists, Render Wranglers, and Software Developers, should find this course both interesting and useful.
Presenter(s)
Paul Kanyuk, Pixar Animation Studios
Paul Kanyuk is a Lead Technical Director at Pixar Animation Studios with credits on Cars, Ratatouille, Wall-E, Up, Cars 2, Brave, and Monster’s University. His specialty is crowd simulation, shading, and rendering, and he is responsible for the procedural animation and rendering of numerous crowd spectacles, including the hordes of rats in Ratatouille, the deluge of falling passengers in Wall-E, and the vicious pack of talking dogs in Up. Paul earned his BSE in Digital Media Design at the University of Pennsylvania and teaches courses in RenderMan and Crowd Simulation at the Academy of Art University.