Retroreflection is an optical phenomenon where light scatters back to its source along the inverted incident direction. Materials with retroreflection properties are used for safety garments to help enhance visibility in low-light conditions like roads at night when illuminated by car headlights. Traffic signs and pavement markings also use materials with such properties to ensure[…]

Diffraction Lobe

Turns out that most computer graphics conductor materials (metals) don’t fit well with their measured real life counterparts. Looks like microfacet models (any reflection node you ever used..) can’t fully address the appearance of this kind of materials. Microfaceting theory models the appearance of a material at macroscopic level based on surface micro details. Situation[…]

Microfacet-based Normal Mapping

Microfacet-based normal mapping is an alternative way of faking geometric details without corrupting Monte Carlo based path tracing light transport and it’s available in ReflectMultiScatter and ReflectGeneralized. Theoretically it is well-defined, symmetric and fully energy conserving. On the other side it means that classic normal mapping has none of the properties above resulting in a[…]

Hazy Reflections

Reflection hazying is actually an artifact. It happens due to micro imperfections which widen the actual reflection lobe making reflections appear less vivid and radiant, more milky and less contrasted. Hazing generally is due to poor industrial processes so that metals and other reflective surfaces have an inferior finish quality because of bad drying or[…]

Wave Optics Glints

This reflection node is a powerfull shader that supports both geometrical optics and wave optics glints, flakes, brushed patterns and scratches. Unlike in geometric optics, the contributions from different parts of the surface can sum non-linearly due to interference effects, to create the characteristic diffraction effects of wave optics.. ie. those colored patterns we see[…]

Multiple-scattering BRDF

With rombo Reflect shaders, – we’re introducing microfacet multiple-scattering in two forms: approximated and true random walk multiple scattering. The true multiple scattering is available only with the ReflectMultipleScatter node while the approximated stuff comes with any specular additional lobe attached to the Diffuse nodes; it is an option with the MultipleScatter node itself and[…]