MaterialPhysicalVolume#
(Volume)
- Category:
/Material/Physical
- Default object name:
volume
- Inherits from: ProjectItem > Material > MaterialPhysical
Description#
A volume physical material
Public Attributes#
Type | Name | Visual Hint | Description |
---|---|---|---|
long |
optical_mode |
VISUAL_HINT_DEFAULT |
Select whether the optical properties of the volume are defined using the absorption-scattering, scattering-attenuation, or attenuation-albedo pair of parameters. Note that in the scattering-attenuation mode (Legacy mode - provided for compatibility purposes), the volume no longer obeys the physical law of energy conservation (i.e., the particles will scatter more light than they receive) whenever the value of the scattering parameter is greater than the value of the attenuation parameter (hence yielding a negative absorption and an albedo greater than one). |
double[3] |
absorption |
VISUAL_HINT_RGB |
Set the relative absorption cross section of the volumetric particles. |
double[3] |
scattering |
VISUAL_HINT_RGB |
Set the relative scattering cross section of the volumetric particles. |
double[3] |
attenuation |
VISUAL_HINT_RGB |
Set the relative attenuation (absorption + scattering) cross section of the volumetric particles. |
double[3] |
albedo |
VISUAL_HINT_RGB |
Set the reflectivity of the attenuating particles. |
double[3] |
emission |
VISUAL_HINT_RGB |
Set the quantity of light emitted by particles. This adds a constant color on the whole volume and doesn't affect the transmission of light. |
double |
density_multiplier |
VISUAL_HINT_SCALE |
Multiply the density of the geometry by this value. |
double |
forward_scattering |
VISUAL_HINT_PERCENTAGE |
Control the intensity of the forward scattering. Use a negative value to obtain backward scattering and a null value to scatter the light in all directions with the same intensity. |
double |
sampling_optimization |
VISUAL_HINT_PERCENTAGE |
Allow to divide samples among overlapping volumes. |
Inherited Public Attributes#
Type | Name | Visual Hint | Description |
---|---|---|---|
bool |
export_aovs |
VISUAL_HINT_DEFAULT |
Compute and write Aovs defined in the shading graph |
reference (AovStore ) |
arbitrary_output_variables |
VISUAL_HINT_DEFAULT |
Set the list of extra channels to write to the image. |
string |
light_path_expression_label |
VISUAL_HINT_DEFAULT |
Set the material label in light path expressions. |
long |
material_sample_count |
VISUAL_HINT_SAMPLE_PER_PIXEL |
Material sample count per pixel. |
double |
volume_sampling_multiplier |
VISUAL_HINT_SCALE |
Material volume sample count multiplier. |
double |
russian_roulette |
VISUAL_HINT_PERCENTAGE |
Amount of Russian roulette used on the material samples. |
double |
roughness_noise_optimization |
VISUAL_HINT_PERCENTAGE |
Noise reduction strategy along rough light path. |
long |
volume_depth |
VISUAL_HINT_DEFAULT |
Maximum volume depth. |
CID#
class "MaterialPhysicalVolume" "MaterialPhysical" {
#version 0.93
icon "material_volume.iconrc"
doc "A volume physical material"
attribute_group "volume" {
bool "energy_conservation" {
doc "Disable energy conservation to revert the volume illumination as it was computed before the bug fixes introduced in version 4.0. Enable energy conservation to make other volume properties editable. This is a transitory attribute solely provided for backward compatibility, and it will be deprecated and its value forced to \"on\" in the next major release version."
hidden yes
value yes
}
long "optical_mode" {
doc "Select whether the optical properties of the volume are defined using the absorption-scattering, scattering-attenuation, or attenuation-albedo pair of parameters. Note that in the scattering-attenuation mode (Legacy mode - provided for compatibility purposes), the volume no longer obeys the physical law of energy conservation (i.e., the particles will scatter more light than they receive) whenever the value of the scattering parameter is greater than the value of the attenuation parameter (hence yielding a negative absorption and an albedo greater than one)."
preset "Physicist" "0"
preset "Legacy" "1"
preset "Artistic" "2"
value 2
}
rgb "absorption" {
doc "Set the relative absorption cross section of the volumetric particles."
texturable yes
animatable yes
read_only yes
value 0.22 0.22 0.22
}
rgb "scattering" {
doc "Set the relative scattering cross section of the volumetric particles."
texturable yes
animatable yes
read_only yes
value 0.78 0.78 0.78
}
rgb "attenuation" {
doc "Set the relative attenuation (absorption + scattering) cross section of the volumetric particles."
texturable yes
animatable yes
value 1 1 1
}
rgb "albedo" {
doc "Set the reflectivity of the attenuating particles."
texturable yes
animatable yes
value 0.78 0.78 0.78
}
rgb "emission" {
doc "Set the quantity of light emitted by particles. This adds a constant color on the whole volume and doesn\'t affect the transmission of light."
texturable yes
animatable yes
value 0.0 0.0 0.0
}
scale "density_multiplier" {
doc "Multiply the density of the geometry by this value."
texturable yes
animatable yes
slider yes
numeric_range yes 0.0 1000000
ui_range yes 0.0 10
value 1
}
percentage "forward_scattering" {
doc "Control the intensity of the forward scattering. Use a negative value to obtain backward scattering and a null value to scatter the light in all directions with the same intensity."
texturable yes
animatable yes
slider yes
numeric_range yes -1 1
ui_range yes -1 1
value 0.0
}
}
attribute_group "material_sampling" {
percentage "sampling_optimization" {
doc "Allow to divide samples among overlapping volumes."
slider yes
numeric_range yes 0.0 1
ui_range yes 0.0 1
value 1
}
}
set "diffuse_sampling_multiplier" {
null_label "Use Renderer Settings"
null_value "-1.0"
private no
hidden yes
saveable yes
texturable no
animatable no
slider no
numeric_range yes 0.0 1000
ui_range yes 0.0 10
dg_active yes
dg_cyclic no
dirtiness_pass_through no
read_only no
shading_variable yes
experimental no
advanced no
overriden no
promote_attribute no
allow_expression yes
localizable yes
value -1
}
set "glossy_reflection_sampling_multiplier" {
null_label "Use Renderer Settings"
null_value "-1.0"
private no
hidden yes
saveable yes
texturable no
animatable no
slider no
numeric_range yes 0.0 1000
ui_range yes 0.0 10
dg_active yes
dg_cyclic no
dirtiness_pass_through no
read_only no
shading_variable yes
experimental no
advanced no
overriden no
promote_attribute no
allow_expression yes
localizable yes
value -1
}
set "glossy_transmission_sampling_multiplier" {
null_label "Use Renderer Settings"
null_value "-1.0"
private no
hidden yes
saveable yes
texturable no
animatable no
slider no
numeric_range yes 0.0 1000
ui_range yes 0.0 10
dg_active yes
dg_cyclic no
dirtiness_pass_through no
read_only no
shading_variable yes
experimental no
advanced no
overriden no
promote_attribute no
allow_expression yes
localizable yes
value -1
}
set "subsurface_sampling_multiplier" {
null_label "Use Renderer Settings"
null_value "-1.0"
private no
hidden yes
saveable yes
texturable no
animatable no
slider no
numeric_range yes 0.0 1000
ui_range yes 0.0 10
dg_active yes
dg_cyclic no
dirtiness_pass_through no
read_only no
shading_variable yes
experimental no
advanced no
overriden no
promote_attribute no
allow_expression yes
localizable yes
value -1
}
set "multiple_scattering_strength" {
private no
hidden yes
saveable yes
texturable no
animatable no
slider no
numeric_range yes 0.0 1
ui_range yes 0.0 1
dg_active yes
dg_cyclic no
dirtiness_pass_through no
read_only no
shading_variable no
experimental no
advanced no
overriden no
promote_attribute no
allow_expression yes
localizable yes
value 1
}
set "diffuse_depth" {
null_label "Use Renderer Settings"
null_value "-1"
private no
hidden yes
saveable yes
texturable no
animatable no
slider no
numeric_range yes 0.0 65536
ui_range yes 0.0 16
dg_active yes
dg_cyclic no
dirtiness_pass_through no
read_only no
shading_variable no
experimental no
advanced no
overriden no
promote_attribute no
allow_expression yes
localizable yes
value -1
}
set "specular_reflection_depth" {
null_label "Use Renderer Settings"
null_value "-1"
private no
hidden yes
saveable yes
texturable no
animatable no
slider no
numeric_range yes 0.0 65536
ui_range yes 0.0 16
dg_active yes
dg_cyclic no
dirtiness_pass_through no
read_only no
shading_variable no
experimental no
advanced no
overriden no
promote_attribute no
allow_expression yes
localizable yes
value -1
}
set "glossy_reflection_depth" {
null_label "Use Renderer Settings"
null_value "-1"
private no
hidden yes
saveable yes
texturable no
animatable no
slider no
numeric_range yes 0.0 65536
ui_range yes 0.0 16
dg_active yes
dg_cyclic no
dirtiness_pass_through no
read_only no
shading_variable no
experimental no
advanced no
overriden no
promote_attribute no
allow_expression yes
localizable yes
value -1
}
set "specular_transmission_depth" {
null_label "Use Renderer Settings"
null_value "-1"
private no
hidden yes
saveable yes
texturable no
animatable no
slider no
numeric_range yes 0.0 65536
ui_range yes 0.0 16
dg_active yes
dg_cyclic no
dirtiness_pass_through no
read_only no
shading_variable no
experimental no
advanced no
overriden no
promote_attribute no
allow_expression yes
localizable yes
value -1
}
set "glossy_transmission_depth" {
null_label "Use Renderer Settings"
null_value "-1"
private no
hidden yes
saveable yes
texturable no
animatable no
slider no
numeric_range yes 0.0 65536
ui_range yes 0.0 16
dg_active yes
dg_cyclic no
dirtiness_pass_through no
read_only no
shading_variable no
experimental no
advanced no
overriden no
promote_attribute no
allow_expression yes
localizable yes
value -1
}
set "opacity" {
private no
hidden yes
saveable yes
texturable yes
animatable yes
slider no
numeric_range yes 0.0 1
ui_range yes 0.0 1
dg_active yes
dg_cyclic no
dirtiness_pass_through no
read_only no
shading_variable yes
experimental no
advanced no
overriden no
promote_attribute no
allow_expression yes
localizable yes
value 1 1 1
}
set "normal_mode" {
private no
hidden yes
saveable yes
texturable no
animatable no
slider no
numeric_range no 0.0 1
ui_range no 0.0 1
dg_active yes
dg_cyclic no
dirtiness_pass_through no
read_only no
shading_variable no
experimental no
advanced no
overriden no
promote_attribute no
allow_expression yes
localizable yes
preset "Flat" "0"
preset "Smooth" "1"
value 1
}
set "normal_input" {
private no
hidden yes
saveable yes
texturable yes
animatable yes
slider no
numeric_range yes 0.0 1
ui_range yes 0.0 1
dg_active yes
dg_cyclic no
dirtiness_pass_through no
read_only no
shading_variable no
experimental no
advanced no
overriden no
promote_attribute no
allow_expression yes
localizable yes
value 1
}
set "sidedness" {
private no
hidden yes
saveable yes
texturable no
animatable no
slider no
numeric_range no 0.0 1
ui_range no 0.0 1
dg_active yes
dg_cyclic no
dirtiness_pass_through no
read_only no
shading_variable no
experimental no
advanced no
overriden no
promote_attribute no
allow_expression yes
localizable yes
preset "Single" "0"
preset "Double" "1"
preset "Invert" "2"
value 0
}
set "shadow_casting_mode" {
private no
hidden yes
saveable yes
texturable no
animatable no
slider no
numeric_range no 0.0 1
ui_range no 0.0 1
dg_active yes
dg_cyclic no
dirtiness_pass_through no
read_only no
shading_variable no
experimental no
advanced no
overriden no
promote_attribute no
allow_expression yes
localizable yes
preset "Opaque" "0"
preset "Artistic" "1"
preset "Physical" "3"
value 3
}
set "shadow_opacity" {
private no
hidden yes
saveable yes
texturable yes
animatable yes
slider yes
numeric_range yes 0.0 1
ui_range yes 0.0 1
dg_active yes
dg_cyclic no
dirtiness_pass_through no
read_only yes
shading_variable no
experimental no
advanced no
overriden no
promote_attribute no
allow_expression yes
localizable yes
value 1
}
set "shadow_coloring" {
private no
hidden yes
saveable yes
texturable yes
animatable yes
slider yes
numeric_range yes 0.0 1
ui_range yes 0.0 1
dg_active yes
dg_cyclic no
dirtiness_pass_through no
read_only yes
shading_variable no
experimental no
advanced no
overriden no
promote_attribute no
allow_expression yes
localizable yes
value 0.5
}
set "reflective_caustics" {
private no
hidden yes
saveable yes
texturable no
animatable no
slider no
numeric_range no 0.0 1
ui_range no 0.0 1
dg_active yes
dg_cyclic no
dirtiness_pass_through no
read_only no
shading_variable no
experimental no
advanced no
overriden no
promote_attribute no
allow_expression yes
localizable yes
preset "Off" "0"
preset "Glossy only" "1"
preset "Specular only" "2"
preset "Full" "3"
value 0
}
set "refractive_caustics" {
private no
hidden yes
saveable yes
texturable no
animatable no
slider no
numeric_range no 0.0 1
ui_range no 0.0 1
dg_active yes
dg_cyclic no
dirtiness_pass_through no
read_only no
shading_variable no
experimental no
advanced no
overriden no
promote_attribute no
allow_expression yes
localizable yes
preset "Off" "0"
preset "Glossy only" "1"
preset "Specular only" "2"
preset "Full" "3"
value 0
}
}