Clone wiki

kettle_uber / Kettle_Uber

Kettle Uber

Kettle Uber is a generic physically plausible 'uber' shader. It is designed to form a 'base shader' for all shaders used in a scene to give you a consistent set of scene wide AOVs, yet is not prohibitive - you can still use whatever shaders you like by using it as the end node in your shading graph.

Kettle has various BRDFs (including refraction and anistropy), coloured transmissive shadows, multiple fresnel modes and a powerful and flexible AOV setup. It also implements MIS for all reflective BRDFs.

Parameter Documentation

Illumination

The illumination tab is divided into 5 sections: diffuse, including backfacing and optimisations, as well as SSS and emission.

kettleuber_doc_diffuse.jpg

Diffuse

ScaleThe intensity of the diffuse color.
ColorThe diffuse color value.
RoughnessControls the diffuse roughness using the Oren-Nayar reflectance model (which models diffuse reflection from rough surfaces). A zero value is equivalent to Lambertian reflectance, higher values (up to 1) are equivalent to a much rougher surface (e.g., plaster, sand, concrete, etc.)

Backfacing

This models translucency on thin surfaces, simulating light falling on the back of the object passing through to the front. Think leaves on a tree. This should only be used on single sided surfaces; objects with thickness will render incorrectly.

ScaleThe intensity of the backfacing effect.
ColorThe backfacing color.

Optimisations

Limit diffuse raysLimits the maximum depth of diffuse rays for this shader, overriding the figure set in the pass’s Arnold Render Options. This will only limit the number of bounces calculated, never increase the maximum above the figure set in the Arnold Render Options.
Number of raysMaximum diffuse depth.
No DirectDon’t add direct lighting to the result. Experimental feature.

SSS

Kettle Uber’s SSS provides a up to three blended layers of SSS that can be activated as required.

kettleuber_doc_sss.jpg

ScaleThe overall intensity of the SSS effect.
Radius multiplierThe backfacing color.
NormalizeNormalizes the SSS layer weights to add up to a combined weight of 1. For example, if all three layer are active with a layer weight of 1, the layer weights will be balanced to 0.333 before being added to the final result. You most likely want this on, but get the option of turning it off for more artistic control.
ActiveTurn on this SSS layer
SSS methodDetermines the model used to calculate SSS - pointcloud gaussian or raytraced single scatter. Raytraced single scatter is most suited to thin, low radius effects, such as an epidermis layer, where pointcloud gaussian would require a very high point count for an accurate result. Pointcloud gaussian, identical to the standard shader’s model, is in turn more suited to deeper SSS effects such as wax. The two models can be used in combination - for example using raytraced single scatter for the epidermis of a skin shader, and pointcloud gaussian for the deeper underlying layers.
WeightThe weight of this SSS layer.
Forward/Backward scatteringHenyey-Greenstein phase function coefficient, in the (-1,+1) open interval, where 0 means isotropic scattering, positive values mean forward scattering, and negative values mean backward scattering. Uh-huh. Ask Marcos :).
ColorThe color value of this SSS layer.
RadiusThe radius of this SSS layer. Internally multiplied by the radius multiplier. Depending on whether Use RGB radius is on or not, this can be a scalar or RGB value.
Use RGB radiusActivate the option of using RGB values for the radius.

Emission

Simulates the material emitting incandescent light.

kettleuber_doc_emission.jpg

ScaleThe intensity of the emission effect.
ColorThe emission color value.

Reflection

kettleuber_doc_reflection.jpg

Reflection

BRDFThe reflectance BRDF. Option between Microfacet (normal) or Anisotropic (stretched) reflection.
ScaleThe relative amount of reflection.
ColorThe color of the reflection.
RoughnessThe sharpness of the reflection, where 0 equals mirror reflection, and 1 equals frosted.
Stretch (Anisotropic only)The intensity of the anisotropic reflection effect. Higher values will produce a more pronounced anisotropic reflectance effect.
Rotation (Anisotropic only)The direction of the anisotropic effect, where the values 0 to 1 map to 0 to 360 degrees rotation.

Tip: Remember to apply an Arnold Parameters property to any objects with anisotropic reflection, and check on Smooth subdiv tangents. Check the Arnold Properties docs for more information.

Exit Color

ColorThe color returned when reflection rays hit the maximum depth.
Use EnvironmentReturn the environment color instead of the above solid color when reflection rays hit the maximum depth.

Optimisations

Limit reflection raysLimits the maximum depth of reflection rays for this shader, overriding the figure set in the pass’s Arnold Render Options. This will only limit the number of bounces calculated, never increase the maximum above the figure set in the Arnold Render Options.
Number of raysMaximum reflection depth.

Fresnel

Fresnel ModeThe fresnel model. Option between Fresnel, IOR, Curve or Metal.

Fresnel mode

Determines the reflectivity via a fresnel coefficient.

kettleuber_doc_fresnel_fresnel.jpg

Use RGB fresnelOption to set a seperate the fresnel amount for each color channel.
Fresnel amountThe fresnel coefficient. When Use RGB fresnel is active, a fresnel coefficient can be given for each color component.

IOR mode

Uses the material’s index of refraction, set in the Refraction/Transparency tab, to determine the reflectivity falloff. Has no further parameters.

kettleuber_doc_fresnel_IOR.jpg

Curve mode

Replicates the Mental Ray Architectural shader’s curve mode.

kettleuber_doc_fresnel_curve.jpg

FacingThe reflectivity value for surfaces that directly face the viewer.
PerpendicularThe reflectivity value for surfaces that are perpendicular to the viewer.
ExponentThe falloff exponent defining the reflectivity of intermediate angles.

Metal mode

The metal mode accurately models the reflection on metals, and offers a wide array of metal presets pre-populated with values drawn from refractiveindex.info.

kettleuber_doc_fresnel_metal.jpg

Use RGB fresnelOption to set a seperate the fresnel amount for each color channel individually. Offers higher accuracy at the expense of speed (three calls to the fresnel function versus just one). When disabled, only the R value is used.
PresetA selection of presets with values for different metals. The custom option allows values to be entered manually.
IORThe index of refraction.
KThe extinction coefficient.

Reflection [Clear Coat]

The clearcoat reflection layer offers the same options as the reflection tab, bar three additional options detailing the layer’s bump behavior.

kettleuber_doc_clearcoat.jpg

Clearcoat activeDetermines whether the clearcoat reflection layer is used.

Bump

Use overall bumpDetermines whether the clearcoat reflection layer is affected by the overall bump, piped into the shader on the Options tab.
Use CC bumpDetermines whether the clearcoat reflection layer is affected by a independent bump, which affects only this clearcoat layer.
CC bumpAn independent bump effect affecting only this clearcoat layer.

Refraction/Transparency

Refraction

kettleuber_doc_refraction.jpg

ScaleUse this feature.
ColorAdd the output to the beauty render (additive).
IOR inDisable to allow this AOV to ignore the shader’s bump input.
IOR outOutput color. Plug in further shader trees here.
RoughnessThe clarity of the refraction, where 0 equals perfect clarity, and 1 equals a frosted effect.

Exit Color

ColorThe color returned when refraction rays hit the maximum depth.
Use EnvironmentReturn the environment color instead of the above solid color when refraction rays hit the maximum depth.

Transmission

Colours the object based on the distance travelled according to Beer’s Law. Useful for simulating mediums that have a volume colour, for instance coloured glass or jelly etc.

Use transmissionTurns transmission on/off.
ExponentIntensity of the transmission.
ColorColor of the transmission effect.

Optimisations

No reflection on refraction rayPrevents reflection rays spawning on refraction rays, potentially significantly reducing render times at the cost of some accuracy.
Colored shadowsTurns colored shadows on/off. Gives a small performance boost.
Limit refraction raysLimits the maximum depth of refraction rays for this shader, overriding the figure set in the pass’s Arnold Render Options. This will only limit the number of refraction calculated, never increase the maximum above the figure set in the Arnold Render Options.
Number of raysMaximum refraction depth.

Opacity

OpacityDetermines the opacity and colour. White is opaque, black is fully transparent.

Options

Additional options and utilities not directly related to the shading modes.

kettleuber_doc_options.jpg

Write AOVsWhen true, Kettle Uber will write to AOVs. Useful if you have chained Kettle shaders that all write to AOVs - make sure write AOVs is off except the last Kettle in the chain.

Depth AOV

Defines the minimum and maximum depth limits represented in the depth AOV, in scene units

Z minimumClosest point to camera.
Z maximumFurthest point from camera.

Holdouts

Utilities dealing with generating holdout mask layers

Holdout camera raysRender RGBA = 0 for the camera rays, effectively punching a hole where the object would be, but still allowing its reflections / GI etc to be visible in the surrounding objects.
Holdout AOVAn arbitrary RGB AOV for the purpose of generating a 3 channel holdout.

Additional AOVs

True to their name, these channels allow two additional arbitrary outputs to be written for this shader.

ActiveUse this feature.
Add to beautyAdd the output to the beauty render (additive).
Affected by bumpDisable to allow this AOV to ignore the shader’s bump input.
ColorOutput color. Plug in further shader trees here.

Bump

Feeding the bump into Kettle Uber through this port, rather than plugging Kettle Uber into a bump node as per Softimage convention, allows Kettle Uber to manage which layers are affected by the bump effect

Bump passthroughPlug in a bump node here. Please note only perturbation of the normal is used, therefore any color or surface shading will be calculated but ignored - it’s recommended to use the kettle bump node.

Updated