glTF KHR_materials_transmission Explained

The KHR_materials_transmission extension introduces realistic glass and transparent dielectric rendering to the glTF 2.0 ecosystem by modeling the physical transmission of light through surfaces. Unlike basic alpha blending, which simply reduces pixel opacity, this extension simulates optical phenomena such as transmitted light, energy conservation, decoupled surface reflections, and microfacet roughness scattering. Understanding these simulated physics allows developers and 3D artists to create authentic glass, water, crystals, and plastics in real-time graphics engines.

Optical Transmission vs. Alpha Blending

Traditional 3D transparency typically relies on alpha blending, which fades an object’s overall visibility. In reality, a clear glass pane is not "invisible"; it is transparent because light passes through its boundary rather than being diffusely scattered. The KHR_materials_transmission extension models this behavior by allowing incoming light to penetrate the surface and illuminate the environment behind it, treating the material as a transparent dielectric rather than an ethereal or fading mesh.

Energy Conservation and the Fresnel Effect

In classical physics, the law of conservation of energy dictates that light striking an interface must be divided among reflection, transmission, and absorption. KHR_materials_transmission replicates this balance. At perpendicular viewing angles, most light is transmitted through the medium. At glancing angles, the Fresnel effect causes reflectivity to increase dramatically while transmission decreases. As a result, the glass retains realistic, sharp reflections at its edges while remaining clear at the center.

Decoupled Specular Highlights

A major limitation of alpha transparency is that reducing opacity also weakens specular highlights, making glass look dull or unnatural. KHR_materials_transmission separates the surface reflection (specular component) from the internal transmission. Even if transmission is set to 100%, strong light sources will still cast bright, distinct specular highlights on the surface, mimicking the high-gloss exterior of real-world glass.

Rough Transmittance and Frosted Effects

Smooth glass transmits sharp, undistorted background imagery, but rough or frosted glass scatters transmitted light. When paired with the material's roughness channel, KHR_materials_transmission replicates microfacet scattering on the transmitted light rays. Lower roughness produces crisp transparency, while higher roughness blurs the background visible through the object, reproducing the diffusion seen in etched, sandblasted, or frosted glass.

Foundation for Volume and Refraction

While KHR_materials_transmission primarily defines the fraction of light passing through an infinitely thin surface boundary, it serves as the base layer for full volumetric rendering. When combined with extensions like KHR_materials_ior and KHR_materials_volume, it governs how light refracts (Snell's Law) and how it attenuates over distance (the Beer-Lambert Law), completing the simulation of dense glass objects.