MaterialProperties

This class stores all properties for a material. LF is an abbreviation for Low Frequency, and HF for High Frequency. Read more: Materials.

public class MaterialProperties
{
    // High-frequency absorption coefficient (0.0 to 1.0).
    public float AbsorptionHF;

    // Low-frequency absorption coefficient (0.0 to 1.0).
    public float AbsorptionLF;

    // Create a MaterialProperties with all values set to 0.
    public MaterialProperties();

    // Create a MaterialProperties with all values provided.
    public MaterialProperties(float absorptionLF, float absorptionHF, float scattering, float transmissionLF, float transmissionHF, float planeTransmissionLF, float planeTransmissionHF);

    // Create a MaterialProperties with the same values as another.
    public MaterialProperties(MaterialProperties prop);

    // Percentage of high-frequency energy lost when a ray passes through a flat PlanePrimitive, DiskPrimitive, TrianglePrimitive or non-watertight MeshPrimitive. Ranges from 0.0 to 1.0
    public float PlaneTransmissionHF;

    // Percentage of low-frequency energy lost when a ray passes through a flat PlanePrimitive, DiskPrimitive, TrianglePrimitive or non-watertight MeshPrimitive. Ranges from 0.0 to 1.0
    public float PlaneTransmissionLF;

    // Scattering strength (0.0 to 1.0), where 0.0 has no scattering and 1.0 scatters up to 90 degrees from the reflected direction.
    public float Scattering;

    // High-frequency transmission in dB/m (0.0 or greater).
    public float TransmissionHF;

    // Low-frequency transmission in dB/m (0.0 or greater).
    public float TransmissionLF;

    // Copy all properties from another MaterialProperties.
    public void Update(MaterialProperties prop);

    // Update all properties.
    public void Update(float absorptionLF, float absorptionHF, float scattering, float transmissionLF, float transmissionHF, float planeTransmissionLF, float planeTransmissionHF);
}