When rendering material icons the floor will not be rendered. This leads to less readability
of the preview icons for metallic and transmissive surfaces.
Master
As no other geometry is in the scene the metallic surfaces only reflect on the lights.
Master:
Cycles
This patch will switch the floor material that uses ray visibility tricks to render a floor for reflective rays.
This patch also works for transmissive materials.
Eevee
Eevee uses screen space reflections that makes this a different problem. There is nothing else drawn in
the scene in screen space so we need a different trick. Using math we convert a reflective ray to UV space
and generate a world that projects a checker pattern to infinity.
The world shader used for shows a checker pattern that act as a floor.
As now the floor is in the world it is being reflected via
a cubemap. As the film is transparent the background (including the floor isn't rendered)
In the future when Eevee supports vulkan raytracing we can re-evaluate and perhaps remove this
approximation.
Alternatives
We tried lightprobes but that wasn't able to do the trick.
Using the compositor would lead to more memory usage (render layers and intermediate buffers) and slower performance.
Solution has been validated with Simon






