Shading and Look Development in RfK combines Katana's built in look development tools with Pixar's powerful material systems. By combining Pixar's built-in Bxdfs (materials) and Patterns (material modifiers) nearly any look could be achieved.
Adding shaders to geometry is a matter of:
- creating a shader or shading network
- attaching that shader to one or more objects
A single material can be added to the Material node. Many types of shading effects can be created using only PRMan's PxrSurface. PxrDiffuse is a good fast and simple option, and there are also the specialty materials: PxrVolume and PxrMarschnerHair. More complex materials can be built with a collection of PrmanShadingNodes which feed into a NetworkMaterial node. The table below has a breakdown of these two scenarios with small Node Graph examples:
|Complex or Layered
|PrmanShadingNode(s) + NetworkMaterial
In both cases the material (Material or NetworkMaterial) is attached to object(s) using the MaterialAssign node. In the simplest case the material is assigned to a single object. A more common case would be to assign the material to multiple locations either all grouped together (e.g. the parent in a hierarchy) or distributed through the scene and identified through a defined commonality (e.g. a "collection"). Details of complex assignments are outside our scope but explained in detail in the Katana documentation for Collections and CEL.
In the table above we've broken down the material types into "Single", "Complex", or "Layered". The difference between Single and Complex/Layered is the ability to add pattern inputs to the bxdf shader. A Material node can only be used with a single bxdf. If additional material modifications such as texture are needed you must use a PrmanShadingNode bxdf with a NetworkMaterial node. The difference between Complex and Layered is, as the name implies, the ability to layer materials. The teapot image at the top of the page is a rendering of these three workflows. The chrome teapot in the center is shaded with simply a PxrSurface Material node. The red teapot is assigned a NetworkMaterial with a PxrSurface bxdf whose Global Bump attribute is fed by PxrBump and PxrWorley. On the right is a NetworkMaterial with a PxrLayerSurface bxdf. PxrLayerSurface is a specialized version of PxrSurface set up for layering with PxrLayer and PxrLayerMixer.