Redshift Sink

Useful notes, tips & tricks regarding the Redshift renderer
#note/sink

TOC

TDR delay

TDR Delay in Registry:

Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers

TdrDelay / Data value should be 0x0000003c (60)
60 = being the seconds you need if its not (60), then double click on the TdrDelay text, change the input mode to Decimal and enter 60

Sampling

Redshift sampling rule

LOCAL / MAX = PIXEL
PIXEL * MIN/MAX = MIN/MAX

Shading

Light decay ramp

Source

RS_light_decay_setup.png|450 RS_light_decay_result.png|450

Realistic glass hacks

old material

Redshift PBR mapping

Which map goes where for PBR, old material

OutputBump MapBump MapRS materialBump MapBump Map (linear)Normal Map (linear)Bump MapHeight Map (linear)DisplacementBump MapBump MapNormal Map (linear)Bump Map (linear)Height Map (linear)Bump BlenderSpecular (linear)Roughness/Glossiness (linear)Diffuse/Albedo (sRGB)
Color Multiplier
Color Multiplier
Tangent-space mode
Tangent-space mode
Height field mode
Height field mode
Surface

Volume

Displace
Surface...
Texture Input
Texture Input
AO (linear)
Texture #1

Texture #2
Texture #1...
Diffuse color

Refl. Roughness

Refl. Weight

Bump
Diffuse color...
Text is not SVG - cannot display

IOR + Dispersion

Standard Material

the base mat IOR + abbe strength which can be whatever you want modulates the IOR to the correct Cauchy based output IOR
- Saul

Non Photorealistic Rendering

Non-PBR rendering, custom Lamber shading

Non Photorealistic Rendering using Redshift in Cinema4D

Reducing shader calls

"Material too complicated" message

Source

Usually this problem comes from using a lot of triplanar nodes in the same material. Instead of using materials with triplanars use the triplanars to blend between inputs then end up with one bump, one displacement and one material, this should reduce the shading calls.

RS_shader_calls_bad.png|370 RS_shader_calls_good.png|300

Left image - many calls, Right image - fewer calls

Normal vector output ranges

Source

Red (-1,1)
Green (-1,1)
Blue (0,1)

OCIO & ACES

ACES output settings

To use the rendered image out of the box

View: ACES SDR Video
Compensate for View Transform: On

To apply the ACES at post so you can color correct with a wider range

View: Raw
Compensate for View Transform: Off

Not to do

It does not match the IPR rendered image either out of box or after post process
View: ACES SDR Video
Compensate for View Transform: Off

BUT also the docs say:

a logarithmic color space (ACEScct) or the raw linear result which is unaffected by the Display transform.

But this doesn't relate to the view compensation, it still does something nonsensical (for log and raw color spaces)

Lighting

Env vs. Sky vs. Dome contribution

Source

It might look a bit different if GI is on as reflections are part of the GI
- Adrian

The dome light kills the environment lighting
- Catche

just use a giant sphere and enable / disable the RS Object properties you want. More control that way
- Saul

throw the texture into an incandescent material
- Catche

because of the order / precedence of the dome light vs physical sky what is contributed takes precedence over one and the other just due to the inherent hierarchy the infinite lights have on each other. Whether they can add some way to change that order as an option on these lights I don't know.
- Saul

Light Affected by refraction

Auto means at lower roughness refraction rays bend accurately (mostly noticeable with HDRI) and as roughness increases it switches to performance mode. Assumption being you can’t see the ray bending as roughness increases anyways. But there are scenarios where it matters more than others. Always means it’s always active but comes at the performance hit.

Light linking

Source

Volumes do not support light linking
-Adrian

Global Illumination

GI guidelines

choosing the right Global Illumination mode for the case:
flat surfaces - IC
details, vegetation - BF
mixed situation - IC for main, BF for others using RS Object Tag

Rendering

Motion blur overhead

Source

The transformations motion blur doesn't add any overhead to the scene extraction code, but you can indeed improve a bit the scene extraction time and the used GPU memory if you disable the mesh deformations motion blur in the static objects. Currently, the plugin doesn't do that automatically, but is a good research topic. I'll think about it.
- Juanjo Gonzales

Motion blur ROP vs Obj

Source

The OBJ level frame duration is a multiplier of the ROP node frame duration, while the OBJ level shutter offset is added over the ROP node shutter settings. The OBJ level options don't replace the ROP settings, which are the same for all the scene objects.
- Juanjo Gonzales

Shadow Ray biasing issue

Source

White lines on the creases

RS_shadow_biasing_issue.png|300

Solution: disable shadow ray biasing in the experimental options

Caustics vs bump

Source
Bump doesn't affect caustics

I believe this might be a limitation as the caustics are a point cloud compute so it happens before shading.
- Adrian

Photometric units

Photometric Units to Meter Scale

Certain features of Redshift such as photographic exposure, physical sun/sky and IES light support require knowledge of the "units to meter" and "candela to square meter" settings. It's important to set these values correctly, otherwise lighting coming from physical light sources might appear too dim or too bright.

If you're working with centimeters (i.e. 1 world unit is 1 centimeter), the units to meter scale should be set to 100. That's because, in this case, 100 world units means 100cm, which means 1 meter. If you're working with meters, then it should be set to 1, because 1 world unit means 1 meter.

cd/m^2 Factor

Photographic exposure, IES lights and the physical sky/sun use the cd/m^2 (candela to square meter) setting. Please make sure to attach a photographic exposure lens shader when using IES lights and physical sun/sky, otherwise your lighting will appear too bright or too dim."

Visible edges with SSS

Source

RS_SSS_redius_edge.png|500

You need a bit more render tessellation as probably the radius of the SSS is bigger than the edge
- Adrian

AOVs

Custom AOVs

Custom AOVs in Redshift for Cinema4D

Custom AOV banding/artifacts on unclamped color data

Source

So i was having consistent glitches and artifacts on various buckets, consistently on specific frames.
I traced the issue down to a custom AOV i was using to export a pass for a color map. This color map was probably above 0-1 values after a color correct node for contrast etc.
Once i set a change ranged after it(set to clamp) the issue was resolved

AOV Apply Color Processing

Enables or disables "Apply Color Processing."

The "apply color processing" option means that gamma correction (if gamma is other than 1.0) and photographic exposure (if a photographic exposure lens shader is present) will both be applied to the AOVs.

Matted objects do not work with the Diffuse Lighting AOV

Shadows that are normally visible in the Diffuse Lighting AOV will not be present for a matted object and you will need to color correct and multiply the background with the shadows/inverted shadows for the matted object.

The Diffuse Lighting AOV already includes a renders Translucency component

If you need to isolate the Translucency component from the Diffuse Lighting AOV please see the raw AOV workflow here

Proxies

RS proxies are tessellated, Not quads

Source

A proxy holds triangles not quads, the mesh has been tessellated already, that option (the wireframe shader's) is to only show original non-tessellated edges which is not the case with a proxy
- Adrian

Attributes

Supported RS particles attributes

Source

The sphere particles in Redshift only support one single scale value, so they only support the float @pscale or @width attributes. If you need particles with XYZ deformations, you are going to need to use point cloud instances, that support the vector @scale attribute.
- Juanjo Gonzales

Object rest position output

Source

You need to output the rsState RayPosition into a custom AOV, with the rsState set to reference

String attributes

Source

The string attribute cannot be passed directly to the Texture node, requires to use an OSL node instead

shader texName
(
    string myString="",
    output color outColor=0
)

{
    outColor = texture(myString, u, -v);
}

and then passed over like this:

string_attr_OSL_pass.png|600

Mapping curve UV strands

Source

By now the strands are not using the curve UVs at all
Promote primlength attribute to points and use for example with Maxon noise V scale