Image

Image

November 20, 2009- The end goal of any live-action project involving CG is to make your artificial elements appear to completely belong within the live action scene. The audience must believe that your 3D creations existed in the scene during filming and were recorded with the same camera at the same time, with the same lighting. Handling this within a CG environment requires that the shaders covering the virtual surfaces be prepared to receive and work with a variety of lighting and reflection data captured from the set of your shot.

Welcome to HDRI Shader Development for Mantra by 3D Buzz. This DVD course focuses on the creation of highly flexible shaders that can provide photorealistic results for your Houdini scenes using the Mantra renderer. Throughout these highly theory-driven video lessons, you’ll learn how to create a single versatile shader that can be used to simulate a wide variety of realistic physical materials, including plastics, metals, rubber, stone, and more! This shader was used throughout the production of Steve Twist’s acclaimed “Norton Commando Transformer” video, which can be seen below.

The lessons begin with a solid foundation of high dynamic range imagery (HDRI), covering what it is and exactly what problems it is designed to solve in a rendering pipeline. More importantly, you’ll learn exactly what data is stored within an HDRI image and how that data can be utilized in your own shaders. Once you understand the key concepts behind HDRI, we move on to the development of our shader.

From the start, we begin the development of our shader with the idea of breaking the result down into separate passes. In doing so, we yield greater command over the result of our final render, as well as provide a streamlining of the rendering process itself for greater efficiency. The shader itself divides into handling two general areas: diffuse and reflection. We begin with a look at the shader’s diffuse color, starting with a simple Environment light. However, we soon discover that this approach comes with too many limitations, and instead break the diffuse up into separate passes for the diffuse lighting, ambient occlusion, and an overall fill, which are all combined with a final diffuse pass to define the object’s overall color.

Once our diffuse passes are clearly defined, we can move onto reflections. To understand how one gets proper reflections on their shaders, they must first understand why we see specular highlights upon objects in the real world, and know how such calculations are handled within a CG environment. Armed with that information, we can our high dynamic range image to produce a series of reflection passes.

Image

The reflection implementation process begins by teaching you about environment map lookup-based reflections and how they work. We then move on to look at how these reflections can be enhanced – and your surfaces redefined – by adding multiple levels of reflection blur. Next we discuss and implement a system for a reflection color pass, allowing our surface to colorize its reflections, as seen in metals such as copper or brass. Finally, we look at how reflections can be occluded or “shadowed,” and implement into our shader a separate pass to handle such circumstances.

With our various diffuse and reflective passes all implemented into the shader, we need some system in place to help us balance the information between the two pass types. To handle this, we look at two key factors: an artist-defined “reflection amount,” and Fresnel calculations to help us deal with view-attenuated reflections. We then establish a separate pass designed purely to specify the balance between diffuse and reflection. This pass can be edited or re-rendered in circumstances in which we decided that more or less reflection was needed, without having to actually re-render diffuse or reflection information.

The benefit of each of these many passes becomes clear throughout each video. As each pass is added, its inclusion is discussed from a pure problem-solving standpoint, allowing you to understand what problem each pass can help us solve in our final output. However, this vast flexibility comes at a price, as we soon discover that so many passes can quickly overwhelm the user. Therefore, along the way, we demonstrate the development and implementation of a pass management system, making it easy to work with the many individual passes.

With each of these topics in hand, we top off our shader by discussing and implementing displacement support, adding another level of realism to our shaders and simplifying the rendering of more complex shapes. The video concludes with a look at using our newly created shader on objects within the “Norton Commando Transformer” animation, allowing you to see a practical use of the tools created throughout the lessons.

Image

 
  Learn More Learn More
  Learning Roadmap Gallery Demo Reels Companion Products