Spectral Rendering Without a Spectral Renderer: Learned Spectral Codes for RGB Pipelines
Spectral rendering reproduces the wavelength-dependent appearance that RGB rendering cannot: metamerism, colour shifts under spectrally rich illumination, coloured glass, metallic reflection and subsurface scattering. It requires a spectrally aware renderer, but the rendering ecosystem is predominantly RGB: game engines, cloud render farms, GPU rasterisers and most offline renderers consume RGB alone, with no access to the internal wavelength propagation that spectral rendering relies on. We introduce learned spectral codes, a compact linear representation that enables general spectral rendering through unmodified RGB pipelines. A trained encoder compresses any visible-range spectral quantity into a small latent vector; the codes are packed as RGB triplets and processed by an off-the-shelf RGB renderer. The codec preserves the arithmetic of light transport, exactly for scaling and addition and approximately for element-wise products, so two standard RGB passes suffice to produce results closely matching a full spectral rendering. The same codec handles reflectance, illumination, coloured glass, conductors, and participating media: one pipeline across material classes, with no per-material modification to the renderer. Where spectral asset data is unavailable, lightweight neural upsamplers bridge legacy RGB inputs to the latent space. Across diverse materials and illumination, the method yields substantial quality improvements on the cases where RGB rendering fails most visibly, at rendering cost comparable to efficient spectral-sampling techniques and with no changes to the renderer.