Define the KHR_materials_volume extension materials options.

interface GLTFMaterialsVolumeExtension {
    thicknessFactor?: number;
    thicknessTexture?: ITextureInfo;
    attenuationDistance?: number;
    attenuationColor?: [number, number, number];
}

Properties

thicknessFactor?: number

The thickness of the volume beneath the surface. The value is given in the coordinate space of the mesh. If the value is 0 the material is thin-walled. Otherwise the material is a volume boundary. The doubleSided property has no effect on volume boundaries. Range is [0, +inf). Default to 0.

thicknessTexture?: ITextureInfo

A texture that defines the thickness, stored in the G channel. This will be multiplied by thicknessFactor. Range is [0, 1].

attenuationDistance?: number

Density of the medium given as the average distance that light travels in the medium before interacting with a particle. The value is given in world space. Range is (0, +inf). Default to Infinity.

attenuationColor?: [number, number, number]

The color that white light turns into due to absorption when reaching the attenuation distance. Default to [1, 1, 1].