Skip to content

MaterialPhysicalStandard

MaterialPhysicalStandard#

(Standard)

Go to User page.

Description#

A surface material based on the interface of the Al Surface shader : http://www.anderslanglands.com/alshaders/alSurface.html.

Public Attributes#

Type Name Visual Hint Description
bool fresnel_energy_conservation VISUAL_HINT_DEFAULT If enabled it will compute the Fresnel using the microfacet normals.
double[3] diffuse_front_color VISUAL_HINT_COLOR Define the diffuse albedo. The diffuse layer sits underneath both specular layers and so its intensity is scaled according to the Fresnel transmission of both the specular lobes.
double diffuse_front_strength VISUAL_HINT_PERCENTAGE Strength of the diffuse color.
double diffuse_roughness VISUAL_HINT_PERCENTAGE Roughness of the diffuse lobe. A zero value yields the actual Lambertian model, whereas greater values increase backward scattering phenomena.
double[3] diffuse_back_color VISUAL_HINT_COLOR Amount of light transmitted by the translucent surface.
double diffuse_back_strength VISUAL_HINT_PERCENTAGE strength of the back color.
double diffuse_sss_mix VISUAL_HINT_PERCENTAGE Mix between the SSS and the diffuse. 0 means no SSS, full diffuse. 1 means full SSS, no diffuse. The SSS lobe sits underneath both specular layers and so its intensity is scaled according to the Fresnel transmission of both specular lobes.
long diffuse_sss_mode VISUAL_HINT_DEFAULT Diffusion profile used to model the attenuation of light with distance due to subsurface scattering. The Gaussian profile is a blurry phenomenological model. The cubic profile is a sharper and more efficient approximation. The empirical profile is a good fit to actual SSS measurements.
double diffuse_sss_density_scale VISUAL_HINT_SCALE Global density of the material, effectively dividing the mean subsurface scattering distance of all layers.
double[3] diffuse_sss_color_1 VISUAL_HINT_COLOR Wavelength-dependent mean subsurface scattering distance of SSS layer 1.
double diffuse_sss_distance_1 VISUAL_HINT_DISTANCE Scaling factor of the mean subsurface scattering distance of layer 1 at all wavelengths.
double diffuse_sss_weight_1 VISUAL_HINT_PERCENTAGE Weight of layer 1 relative to that of all SSS layers.
double[3] diffuse_sss_color_2 VISUAL_HINT_COLOR Wavelength-dependent mean subsurface scattering distance of SSS layer 2.
double diffuse_sss_distance_2 VISUAL_HINT_DISTANCE Scaling factor of the mean subsurface scattering distance of layer 2 at all wavelengths.
double diffuse_sss_weight_2 VISUAL_HINT_PERCENTAGE Weight of layer 2 relative to that of all SSS layers.
double[3] diffuse_sss_color_3 VISUAL_HINT_COLOR Wavelength-dependent mean subsurface scattering distance of SSS layer 3.
double diffuse_sss_distance_3 VISUAL_HINT_DISTANCE Scaling factor of the mean subsurface scattering distance of layer 3 at all wavelengths.
double diffuse_sss_weight_3 VISUAL_HINT_PERCENTAGE Weight of layer 3 relative to that of all SSS layers.
string diffuse_sss_group VISUAL_HINT_TAG Name of the group among which illumination propagates between SSS materials.
long diffuse_normal_mode VISUAL_HINT_DEFAULT Define which geometric normal to use for the shading.
double diffuse_normal_input VISUAL_HINT_PERCENTAGE Override the shading normal by the one given as input. The value controls the blending with the original normal.
double[3] specular_1_color VISUAL_HINT_COLOR Reflection color of the specular 1 lobe. The specular 1 lobe sits on top of all the others and so both receives all the light and attenuates the light reaching all other lobes.
double specular_1_strength VISUAL_HINT_PERCENTAGE Reflection strength of the specular lobe.
double specular_1_roughness VISUAL_HINT_PERCENTAGE Roughness of the specular lobe.
double specular_1_anisotropy VISUAL_HINT_PERCENTAGE Anisotropy of the specular lobe.
double specular_1_anisotropy_rotation VISUAL_HINT_PERCENTAGE Rotates the anisotropy direction of the specular lobe around the normal (100% equates to 180 degrees).
long specular_1_fresnel_preset VISUAL_HINT_DEFAULT Set of measured Fresnel presets for well-known materials.
long specular_1_fresnel_mode VISUAL_HINT_DEFAULT Dielectric is appropriate for non-conductive materials such as most organics, plastic, glass and water etc. Metallic is appropriate for metals.
double specular_1_index_of_refraction VISUAL_HINT_DEFAULT Set the index of refraction.
double[3] specular_1_fresnel_reflectivity VISUAL_HINT_COLOR Reflectance color at normal incidence (aka F0).
double[3] specular_1_fresnel_edge_tint VISUAL_HINT_COLOR Color bias as the viewing direction becomes parallel to the surface.
long specular_1_brdf VISUAL_HINT_DEFAULT BRDF used for the specular lobe.
double[3] specular_1_exit_color VISUAL_HINT_COLOR Set the reflection color when there is no more bounce along the path.
long specular_1_normal_mode VISUAL_HINT_DEFAULT Define which geometric normal to use for the shading.
double specular_1_normal_input VISUAL_HINT_PERCENTAGE Override the shading normal by the one given as input. The value controls the blending with the original normal.
double[3] specular_2_color VISUAL_HINT_COLOR Reflection color of the second specular 2 lobe. The specular 2 lobe sits underneath the specular 1 lobe and so is attenuated by it and attenuates the light reaching all other lobes
double specular_2_strength VISUAL_HINT_PERCENTAGE Reflection strength of the specular lobe.
double specular_2_roughness VISUAL_HINT_PERCENTAGE Roughness of the specular lobe.
double specular_2_anisotropy VISUAL_HINT_PERCENTAGE Anisotropy of the specular lobe.
double specular_2_anisotropy_rotation VISUAL_HINT_PERCENTAGE Rotates the anisotropy direction of the specular lobe around the normal (100% equates to 180 degrees).
long specular_2_fresnel_preset VISUAL_HINT_DEFAULT Set of measured Fresnel presets for well-known materials.
long specular_2_fresnel_mode VISUAL_HINT_DEFAULT Selects which mode to use for the fresnel. Dielectric is appropriate for non-conductive materials such as most organics, plastic, glass and water etc. Metallic is appropriate for metals.
double specular_2_index_of_refraction VISUAL_HINT_DEFAULT Set the index of refraction.
double[3] specular_2_fresnel_reflectivity VISUAL_HINT_COLOR Reflectance color at normal incidence (aka F0).
double[3] specular_2_fresnel_edge_tint VISUAL_HINT_COLOR Color bias as the viewing direction becomes parallel to the surface.
long specular_2_brdf VISUAL_HINT_DEFAULT BRDF used for the specular lobe.
double[3] specular_2_exit_color VISUAL_HINT_COLOR Set the reflection color when there is no more bounce along the path.
long specular_2_normal_mode VISUAL_HINT_DEFAULT Define which geometric normal to use for the shading.
double specular_2_normal_input VISUAL_HINT_PERCENTAGE Override the shading normal by the one given as input. The value controls the blending with the original normal.
double[3] transmission_color VISUAL_HINT_COLOR Set the refraction color of the material.
double transmission_strength VISUAL_HINT_PERCENTAGE strength of the refraction color. The transmission lobe sits underneath the two specular layers and is attenuated by both.
bool transmission_link_to_specular VISUAL_HINT_DEFAULT The roughness and the ior will be the same as the specular lobe choose in Transmission Linked To.
long transmission_linked_to VISUAL_HINT_DEFAULT Choose which specular will be linked to the transmission
double transmission_index_of_refraction VISUAL_HINT_DEFAULT Set the index of refraction.
double transmission_roughness VISUAL_HINT_PERCENTAGE Roughness of the refraction surface.
double[3] transmittance_color VISUAL_HINT_COLOR Set the transmittance color of the material.
double transmittance_density VISUAL_HINT_DEFAULT Set the transmittance density of the material.
double[3] transmission_scatter VISUAL_HINT_COLOR Color of the scattering
double transmission_scatter_anisotropy VISUAL_HINT_PERCENTAGE Anisotropy of the scattering.
double[3] transmission_exit_color VISUAL_HINT_COLOR Set the refraction color when there is no more bounce along the path.
long transmission_normal_mode VISUAL_HINT_DEFAULT Define which geometric normal to use for the shading.
double transmission_normal_input VISUAL_HINT_PERCENTAGE Override the shading normal by the one given as input. The value controls the blending with the original normal.
double[3] emission_color VISUAL_HINT_COLOR Define the emission color.
double emission_weight VISUAL_HINT_PERCENTAGE strength of the emission color

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 diffuse_sampling_multiplier VISUAL_HINT_SCALE Material diffuse sample count multiplier.
double glossy_reflection_sampling_multiplier VISUAL_HINT_SCALE Material glossy reflection sample count multiplier.
double glossy_transmission_sampling_multiplier VISUAL_HINT_SCALE Material glossy transmission sample count multiplier.
double subsurface_sampling_multiplier VISUAL_HINT_SCALE Material subsurface sample count multiplier.
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.
double multiple_scattering_strength VISUAL_HINT_PERCENTAGE Strength of compensation for energy lost by multiple scattering.
long diffuse_depth VISUAL_HINT_DEFAULT Maximum diffuse depth.
long specular_reflection_depth VISUAL_HINT_DEFAULT Maximum specular reflection depth.
long glossy_reflection_depth VISUAL_HINT_DEFAULT Maximum glossy reflection depth.
long specular_transmission_depth VISUAL_HINT_DEFAULT Maximum specular transmission depth.
long glossy_transmission_depth VISUAL_HINT_DEFAULT Maximum glossy transmission depth.
long volume_depth VISUAL_HINT_DEFAULT Maximum volume depth.
double[3] opacity VISUAL_HINT_COLOR Opacity of the material.
long normal_mode VISUAL_HINT_DEFAULT Define which geometric normal to use for the shading.
double normal_input VISUAL_HINT_PERCENTAGE Override the shading normal by the one given as input. The value controls the blending with the original normal.
long sidedness VISUAL_HINT_DEFAULT Sidedness of this surface used for this material. 'Single' keeps the original normals no matter what. 'Double' may flip the normal to be oriented toward the incomming direction. 'Invert' flips the original normal no matter what.
long shadow_casting_mode VISUAL_HINT_DEFAULT Defines the properties of the material when casting shadows: fully opaque (regardless of the actual value of the opacity of the material), artistic (user-defined opacity and coloring), pseudo-caustics (cheaply emulating actual refractive caustics) or physical (intrinsic transparency of the material), where the last three are modulated by the opacity of the material.
double shadow_opacity VISUAL_HINT_PERCENTAGE Defines how dark the shadows cast by this material are.
double shadow_coloring VISUAL_HINT_PERCENTAGE Defines how much refraction and absorption colors affect shadowing.
long reflective_caustics VISUAL_HINT_DEFAULT Reflective caustics computation mode.
long refractive_caustics VISUAL_HINT_DEFAULT Refractive caustics computation mode.

CID#

class "MaterialPhysicalStandard" "MaterialPhysical" {
    #version 0.97
    doc "A surface material based on the interface of the Al Surface shader : http://www.anderslanglands.com/alshaders/alSurface.html."
    attribute_group "energy conservation" {
        bool "fresnel_energy_conservation" {
            doc "If enabled it will compute the Fresnel using the microfacet normals."
            value yes
        }
    }
    attribute_group "diffuse" {
        color "diffuse_front_color" {
            doc "Define the diffuse albedo. The diffuse layer sits underneath both specular layers and so its intensity is scaled according to the Fresnel transmission of both the specular lobes."
            texturable yes
            animatable yes
            value 0.5 0.5 0.5
        }
        percentage "diffuse_front_strength" {
            doc "Strength of the diffuse color."
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 0.0 10
            ui_range yes 0.0 1
            value 1
        }
        percentage "diffuse_roughness" {
            doc "Roughness of the diffuse lobe. A zero value yields the actual Lambertian model, whereas greater values increase backward scattering phenomena."
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 0.0 100
            ui_range yes 0.0 1
            value 0.0
        }
    }
    attribute_group "diffuse>backlight" {
        collapsed yes
        color "diffuse_back_color" {
            doc "Amount of light transmitted by the translucent surface."
            texturable yes
            animatable yes
            read_only yes
            value 0.18 0.18 0.18
        }
        percentage "diffuse_back_strength" {
            doc "strength of the back color."
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 0.0 10
            ui_range yes 0.0 1
            value 0.0
        }
    }
    attribute_group "diffuse>subsurface" {
        collapsed yes
        percentage "diffuse_sss_mix" {
            doc "Mix between the SSS and the diffuse. 0 means no SSS, full diffuse. 1 means full SSS, no diffuse. The SSS lobe sits underneath both specular layers and so its intensity is scaled according to the Fresnel transmission of both specular lobes."
            texturable yes
            slider yes
            numeric_range yes 0.0 1
            ui_range yes 0.0 1
            value 0.0
        }
        long "diffuse_sss_mode" {
            doc "Diffusion profile used to model the attenuation of light with distance due to subsurface scattering. The Gaussian profile is a blurry phenomenological model. The cubic profile is a sharper and more efficient approximation. The empirical profile is a good fit to actual SSS measurements."
            read_only yes
            preset "Gaussian" "1"
            preset "Cubic" "2"
            preset "Empirical" "0"
            value 2
        }
        scale "diffuse_sss_density_scale" {
            doc "Global density of the material, effectively dividing the mean subsurface scattering distance of all layers."
            texturable yes
            animatable yes
            numeric_range yes 0.0001 1.79769313486232e+308
            ui_range yes 0.0001 1.79769313486232e+308
            read_only yes
            value 1
        }
        color "diffuse_sss_color_1" {
            doc "Wavelength-dependent mean subsurface scattering distance of SSS layer 1."
            texturable yes
            animatable yes
            read_only yes
            value 0.439 0.156 0.078
        }
        distance "diffuse_sss_distance_1" {
            doc "Scaling factor of the mean subsurface scattering distance of layer 1 at all wavelengths."
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 0.0001 1.79769313486232e+308
            ui_range yes 0.0001 0.1
            read_only yes
            value 1.5
        }
        percentage "diffuse_sss_weight_1" {
            doc "Weight of layer 1 relative to that of all SSS layers."
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 0.0 10
            ui_range yes 0.0 1
            read_only yes
            value 1
        }
        color "diffuse_sss_color_2" {
            doc "Wavelength-dependent mean subsurface scattering distance of SSS layer 2."
            texturable yes
            animatable yes
            read_only yes
            value 0.439 0.08 0.018
        }
        distance "diffuse_sss_distance_2" {
            doc "Scaling factor of the mean subsurface scattering distance of layer 2 at all wavelengths."
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 0.0001 1.79769313486232e+308
            ui_range yes 0.0001 0.1
            read_only yes
            value 4
        }
        percentage "diffuse_sss_weight_2" {
            doc "Weight of layer 2 relative to that of all SSS layers."
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 0.0 10
            ui_range yes 0.0 1
            read_only yes
            value 0.0
        }
        color "diffuse_sss_color_3" {
            doc "Wavelength-dependent mean subsurface scattering distance of SSS layer 3."
            texturable yes
            animatable yes
            read_only yes
            value 0.523 0.637 0.667
        }
        distance "diffuse_sss_distance_3" {
            doc "Scaling factor of the mean subsurface scattering distance of layer 3 at all wavelengths."
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 0.0001 1.79769313486232e+308
            ui_range yes 0.0001 0.1
            read_only yes
            value 0.75
        }
        percentage "diffuse_sss_weight_3" {
            doc "Weight of layer 3 relative to that of all SSS layers."
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 0.0 10
            ui_range yes 0.0 1
            read_only yes
            value 0.0
        }
        tag "diffuse_sss_group" {
            doc "Name of the group among which illumination propagates between SSS materials."
            read_only yes
            value ""
        }
    }
    attribute_group "diffuse>advanced" {
        collapsed yes
        ui_weight 1000
        long "diffuse_normal_mode" {
            doc "Define which geometric normal to use for the shading."
            preset "Flat" "0"
            preset "Smooth" "1"
            value 1
        }
        percentage "diffuse_normal_input" {
            doc "Override the shading normal by the one given as input. The value controls the blending with the original normal."
            texturable yes
            animatable yes
            numeric_range yes 0.0 1
            ui_range yes 0.0 1
            value 1
        }
    }
    attribute_group "specular_1" {
        color "specular_1_color" {
            doc "Reflection color of the specular 1 lobe. The specular 1 lobe sits on top of all the others and so both receives all the light and attenuates the light reaching all other lobes."
            texturable yes
            animatable yes
            value 1 1 1
        }
        percentage "specular_1_strength" {
            doc "Reflection strength of the specular lobe."
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 0.0 10
            ui_range yes 0.0 1
            value 1
        }
        percentage "specular_1_roughness" {
            doc "Roughness of the specular lobe."
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 0.0 1
            ui_range yes 0.0 1
            value 0.3
        }
        percentage "specular_1_anisotropy" {
            doc "Anisotropy of the specular lobe."
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 0.0 1
            ui_range yes 0.0 1
            value 0.5
        }
        percentage "specular_1_anisotropy_rotation" {
            doc "Rotates the anisotropy direction of the specular lobe around the normal (100% equates to 180 degrees)."
            texturable yes
            animatable yes
            slider yes
            ui_range yes 0.0 1
            read_only yes
            value 0.0
        }
    }
    attribute_group "specular_1>fresnel" {
        collapsed yes
        long "specular_1_fresnel_preset" {
            doc "Set of measured Fresnel presets for well-known materials."
            preset "Custom" "-1"
            preset "Polyurethane" "0"
            preset "Water" "1"
            preset "Aluminium" "2"
            preset "Chromium" "3"
            preset "Copper" "4"
            preset "Gold" "5"
            preset "Silver" "6"
            preset "Titanium" "7"
            value -1
        }
        long "specular_1_fresnel_mode" {
            doc "Dielectric is appropriate for non-conductive materials such as most organics, plastic, glass and water etc. Metallic is appropriate for metals."
            preset "Dielectric" "0"
            preset "Metallic" "1"
            value 0
        }
        double "specular_1_index_of_refraction" {
            doc "Set the index of refraction."
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 1e-06 1000000000
            ui_range yes 0.001 5
            value 1.4
        }
        color "specular_1_fresnel_reflectivity" {
            doc "Reflectance color at normal incidence (aka F0)."
            texturable yes
            animatable yes
            read_only yes
            value 0.04 0.04 0.04
        }
        color "specular_1_fresnel_edge_tint" {
            doc "Color bias as the viewing direction becomes parallel to the surface."
            texturable yes
            animatable yes
            read_only yes
            value 0.0 0.0 0.0
        }
    }
    attribute_group "specular_1>advanced" {
        collapsed yes
        ui_weight 1000
        long "specular_1_brdf" {
            doc "BRDF used for the specular lobe."
            preset "GGX" "0"
            preset "Ward" "1"
            preset "Beckmann" "2"
            value 0
        }
        color "specular_1_exit_color" {
            doc "Set the reflection color when there is no more bounce along the path."
            texturable yes
            animatable yes
            value 0.0 0.0 0.0
        }
        long "specular_1_normal_mode" {
            doc "Define which geometric normal to use for the shading."
            preset "Flat" "0"
            preset "Smooth" "1"
            value 1
        }
        percentage "specular_1_normal_input" {
            doc "Override the shading normal by the one given as input. The value controls the blending with the original normal."
            texturable yes
            animatable yes
            numeric_range yes 0.0 1
            ui_range yes 0.0 1
            value 1
        }
    }
    attribute_group "specular_2" {
        collapsed yes
        color "specular_2_color" {
            doc "Reflection color of the second specular 2 lobe. The specular 2 lobe sits underneath the specular 1 lobe and so is attenuated by it and attenuates the light reaching all other lobes"
            texturable yes
            animatable yes
            read_only yes
            value 1 1 1
        }
        percentage "specular_2_strength" {
            doc "Reflection strength of the specular lobe."
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 0.0 10
            ui_range yes 0.0 1
            value 0.0
        }
        percentage "specular_2_roughness" {
            doc "Roughness of the specular lobe."
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 0.0 1
            ui_range yes 0.0 1
            read_only yes
            value 0.5
        }
        percentage "specular_2_anisotropy" {
            doc "Anisotropy of the specular lobe."
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 0.0 1
            ui_range yes 0.0 1
            read_only yes
            value 0.5
        }
        percentage "specular_2_anisotropy_rotation" {
            doc "Rotates the anisotropy direction of the specular lobe around the normal (100% equates to 180 degrees)."
            texturable yes
            animatable yes
            slider yes
            ui_range yes 0.0 1
            read_only yes
            value 0.0
        }
    }
    attribute_group "specular_2>fresnel" {
        collapsed yes
        long "specular_2_fresnel_preset" {
            doc "Set of measured Fresnel presets for well-known materials."
            read_only yes
            preset "Custom" "-1"
            preset "Polyurethane" "0"
            preset "Water" "1"
            preset "Aluminium" "2"
            preset "Chromium" "3"
            preset "Copper" "4"
            preset "Gold" "5"
            preset "Silver" "6"
            preset "Titanium" "7"
            value -1
        }
        long "specular_2_fresnel_mode" {
            doc "Selects which mode to use for the fresnel. Dielectric is appropriate for non-conductive materials such as most organics, plastic, glass and water etc. Metallic is appropriate for metals."
            read_only yes
            preset "Dielectric" "0"
            preset "Metallic" "1"
            value 0
        }
        double "specular_2_index_of_refraction" {
            doc "Set the index of refraction."
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 1e-06 1000000000
            ui_range yes 0.001 5
            read_only yes
            value 1.4
        }
        color "specular_2_fresnel_reflectivity" {
            doc "Reflectance color at normal incidence (aka F0)."
            texturable yes
            animatable yes
            read_only yes
            value 0.548 0.549 0.57
        }
        color "specular_2_fresnel_edge_tint" {
            doc "Color bias as the viewing direction becomes parallel to the surface."
            texturable yes
            animatable yes
            read_only yes
            value 0.579 0.598 0.62
        }
    }
    attribute_group "specular_2>advanced" {
        collapsed yes
        ui_weight 1000
        long "specular_2_brdf" {
            doc "BRDF used for the specular lobe."
            read_only yes
            preset "GGX" "0"
            preset "Ward" "1"
            preset "Beckmann" "2"
            value 0
        }
        color "specular_2_exit_color" {
            doc "Set the reflection color when there is no more bounce along the path."
            texturable yes
            animatable yes
            read_only yes
            value 0.0 0.0 0.0
        }
        long "specular_2_normal_mode" {
            doc "Define which geometric normal to use for the shading."
            preset "Flat" "0"
            preset "Smooth" "1"
            value 1
        }
        percentage "specular_2_normal_input" {
            doc "Override the shading normal by the one given as input. The value controls the blending with the original normal."
            texturable yes
            animatable yes
            numeric_range yes 0.0 1
            ui_range yes 0.0 1
            value 1
        }
    }
    attribute_group "transmission" {
        collapsed yes
        color "transmission_color" {
            doc "Set the refraction color of the material."
            texturable yes
            animatable yes
            read_only yes
            value 1 1 1
        }
        percentage "transmission_strength" {
            doc "strength of the refraction color. The transmission lobe sits underneath the two specular layers and is attenuated by both."
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 0.0 10
            ui_range yes 0.0 1
            value 0.0
        }
        bool "transmission_link_to_specular" {
            doc "The roughness and the ior will be the same as the specular lobe choose in Transmission Linked To."
            read_only yes
            value yes
        }
        long "transmission_linked_to" {
            doc "Choose which specular will be linked to the transmission"
            read_only yes
            preset "Specular 1" "0"
            preset "Specular 2" "1"
            value 0
        }
        double "transmission_index_of_refraction" {
            doc "Set the index of refraction."
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 1e-06 1000000000
            ui_range yes 0.001 5
            read_only yes
            value 1.4
        }
        percentage "transmission_roughness" {
            doc "Roughness of the refraction surface."
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 0.0 1
            ui_range yes 0.0 1
            read_only yes
            value 0.0
        }
    }
    attribute_group "transmission>attenuation" {
        collapsed yes
        color "transmittance_color" {
            doc "Set the transmittance color of the material."
            texturable yes
            animatable yes
            value 1 1 1
        }
        double "transmittance_density" {
            doc "Set the transmittance density of the material."
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 0.0 10000000
            ui_range yes 0.0 10
            value 0.0
        }
        color "transmission_scatter" {
            doc "Color of the scattering"
            texturable yes
            animatable yes
            value 0.0 0.0 0.0
        }
        percentage "transmission_scatter_anisotropy" {
            doc "Anisotropy of the scattering."
            texturable yes
            animatable yes
            slider yes
            ui_range yes -1 1
            value 0.0
        }
    }
    attribute_group "transmission>advanced" {
        collapsed yes
        ui_weight 1000
        color "transmission_exit_color" {
            doc "Set the refraction color when there is no more bounce along the path."
            texturable yes
            animatable yes
            read_only yes
            value 0.0 0.0 0.0
        }
        long "transmission_normal_mode" {
            doc "Define which geometric normal to use for the shading."
            preset "Flat" "0"
            preset "Smooth" "1"
            value 1
        }
        percentage "transmission_normal_input" {
            doc "Override the shading normal by the one given as input. The value controls the blending with the original normal."
            texturable yes
            animatable yes
            numeric_range yes 0.0 1
            ui_range yes 0.0 1
            value 1
        }
    }
    attribute_group "emission" {
        collapsed yes
        color "emission_color" {
            doc "Define the emission color."
            texturable yes
            animatable yes
            read_only yes
            value 1 1 1
        }
        percentage "emission_weight" {
            doc "strength of the emission color"
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 0.0 10000000
            ui_range yes 0.0 1
            value 0.0
        }
    }
    set "shadow_casting_mode" {
        private no
        hidden no
        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"
        preset "Pseudo-Caustics" "2"
        value 2
    }
}