DwaRefractiveMaterial
Overview
The DwaRefractiveMaterial is the material for all transparent materials such as water, glass, and gemstones. It is best to use physical values for the refractive_index eg. 1.33 for water and 1.52 for glass. Larger values can be used for gemstones; up to 2.42 for diamond. Note that there is no diffuse component, but a diffuse lobe can be layered over the DwaRefractiveMaterial via the DwaLayerMaterial to achieve looks such as dirt or paint on top of glass.
Attribute Reference
Advanced attributes
specular
Float bindable
default: 1.0
enables/disables specular reflections (binary 0|1 for plausibility)
Clearcoat attributes
clearcoat
Float bindable
default: 1.0
enables/disables clearcoat (binary 0|1 for plausibility)
clearcoat_attenuation_color
Rgb bindable
default: [ 0.5, 0.5, 0.5 ]
the attenuation color of the clearcoat when 'cleacoat thickness' > 0
clearcoat_bending
Bool
default: True
(advanced, recommended ON) bends rays based on the clearcoat-refractive-index before evaluating the lobes under clearcoat
clearcoat_model
Int enum
0 = “Beckmann”
1 = “GGX” (default)
sets the normal distribution function for clearcoat. GGX is currently isotropic only
clearcoat_normal_dial
Float bindable
default: 1.0
controls the amount of infuence of the alternate clearcoat normal
clearcoat_refractive_index
Float
default: 1.5
defines the Fresnel behavior
clearcoat_roughness
Float bindable
default: 0.1
the roughness of the clearcoat lobe
clearcoat_thickness
Float bindable
default: 0.0
the thickness of the virtual clearcoat layer. Values > 0 enable absorption
independent_clearcoat_normal
NormalMap
default: None
specifies an independent shading normal (normal map) for the clearcoat lobe
show_clearcoat
Bool
default: False
enables/disables clearcoat
use_independent_clearcoat_normal
Bool
default: False
specifies whether the clearcoat lobe should use an independent normal
Common attributes
casts_caustics
Bool
default: False
allows continuation of caustic light paths.
presence
Float bindable
default: 1.0
controls the visibility of this object. Useful for fading an object in/out, or to specify a cut-out mask on thin single-sided geometry (eg. a complex leaf texture on a simple card).
thin_geometry
Bool
default: False
enables proper shading of infinitely thin geometry such as paper or leaves.
Emission attributes
emission
Rgb bindable
default: [ 1, 1, 1 ]
the energy emitted from this material
show_emission
Bool
default: False
enables/disable emission
Fuzz attributes
fuzz
Float bindable
default: 1.0
fuzz mask
fuzz_albedo
Rgb bindable
default: [ 1, 1, 1 ]
Color of the fuzz highlights.
fuzz_normal
NormalMap
default: None
specifies an independent shading normal (normal map) for the fuzz lobe
fuzz_normal_dial
Float bindable
default: 1.0
controls the amount of infuence of the alternate fuzz normal
fuzz_roughness
Float bindable
default: 0.25
Lower values result in glancing angle highlights while higher values result in a broad, uniform coverage
show_fuzz
Bool
default: False
Enables/disables fuzz lobe
use_absorbing_fuzz_fibers
Bool
default: False
Specify whether dark fuzz fibers absorb energy or transmit it to the layers below.
Iridescence attributes
iridescence
Float bindable
default: 0.0
controls the strength of the iridescence effect
iridescence_apply_to
Int enum
0 = “primary specular” (default)
1 = “clearcoat/moisture specular”
Apply iridescence to primary specular lobe or clearcoat/moisture lobe
iridescence_at_0_incidence
Float bindable
default: 1.0
Iridescence effect at 0 degree viewing angle
iridescence_at_90_incidence
Float bindable
default: 1.0
Iridescence effect at 90 degree viewing angle
iridescence_color_control
Int enum
0 = “use hue interpolation” (default)
1 = “use ramp”
use hue interpolation: automatically cycles through hue wheel, use ramp: user specified color ramp
iridescence_colors
RgbVector
default: [[ 1, 0, 0 ], [ 1, 1, 0 ], [ 0, 1, 0 ], [ 0, 1, 1 ], [ 0, 0, 1 ], [ 1, 0, 1 ], [ 1, 0, 0 ]]
List of colors on the ramp
iridescence_exponent
Float bindable
default: 1.0
Tightens or broadens the distribution of colors
iridescence_flip_hue_direction
Bool
default: False
flip interpolation around the hue wheel to counter-clockwise direction
iridescence_interpolations
IntVector
default: {}
None: 0 | Linear: 1 | Exponential Up: 2 | Exponential Down: 3 |
Smooth: 4 | Catmull Rom: 5 | Monotone Cubic: 6
iridescence_positions
FloatVector
default: {}
ramp positions
iridescence_primary_color
Rgb bindable
default: [ 1, 0, 0 ]
First color to interpolate from around the hue wheel
iridescence_ramp_interpolation_mode
Int enum
0 = “RGB” (default)
1 = “HSV”
RGB: lerp in RGB space which matches UI preview but can lose saturation, HSV: lerp in HSV space which preserves saturation
iridescence_secondary_color
Rgb bindable
default: [ 1, 0, 0 ]
Second color to interpolate to around the hue wheel
iridescence_thickness
Float bindable
default: 1.0
Controls how much the color spectrum is repeated
Normal attributes
input_normal
NormalMap
default: None
specifies an alternate shading normal in the tangent frame (normal map)
input_normal_dial
Float bindable
default: 1.0
controls the amount of influence of the alternate normal
Normal Anti-aliasing attributes
normal_AA_dial
Float
default: 1.0
Controls the amount roughness compensation from the normal map AA strategy.
normal_AA_strategy
Int enum
0 = “none” (default)
1 = “toksvig”
Normal map anti-aliasing strategy to use - 'none' uses regular mip-mapping, 'toksvig' increases specular roughness corresponding to the geometric details filtered out because of mip-mapping.
Specular attributes
anisotropy
Float bindable
default: 0.0
controls the shape of the primary reflection
refractive_index
Float
default: 1.5
defines the Fresnel behavior, (affects reflection and refraction)
roughness
Float bindable
default: 0.5
the roughness of the surface (currently only affects reflection)
shading_tangent
Vec2f bindable
default: [ 1, 0 ]
controls the orientation of anistropy
show_specular
Bool
default: True
enables/disables specular reflections
specular_model
Int enum
0 = “Beckmann”
1 = “GGX” (default)
sets the normal distribution function for specular. GGX is currently isotropic only
Transmission attributes
dispersion_abbe_number
Float
default: 34.0
The amount of dispersion/chromatic-aberration via refractions. Lower this number to increase the effect. A value of 0 turns off dispersion. Around [25-80] makes sense for realistic glass. Lower values may look better on gemstones.
independent_transmission_refractive_index
Float
default: 1.5
defines a separate IOR for the bending of light with transmission
independent_transmission_roughness
Float bindable
default: 0.5
separate roughness for transmission
show_transmission
Bool
default: True
enables/disables refractive solid model
transmission_color
Rgb bindable
default: [ 1, 1, 1 ]
the desired color of transmitted light
use_dispersion
Bool
default: False
use dispersion effects in transmission
use_independent_transmission_refractive_index
Bool
default: False
use a separate IOR for transmission
use_independent_transmission_roughness
Bool
default: False
use a separate roughness for transmission
General attributes
extra_aovs
Map
default: None
Bind this attribute to a 'ListMap' that contains references to ExtraAovMaps that specify additional outputs that can be assigned to a RenderOutput "light aov" result
invisible_refractive_cryptomatte
Bool
default: False
Indicates whether material should/should not appear in the refractive cryptomatte layers
label
String
default:
label used in material and light aovs
priority
Int
default: 0
The material's place in an order of precedence for overlapping dielectrics. A value of 0 means the priority should be ignored. Materials with lower numbers (higher priority) "override" materials with higher numbers (lower priority). To enable automatic removal of self-overlapping geometry, a non-zero priority must be set on the geometry's material.