Pushing the limits of realism of materials
Yet another X-Factor: Thin-film Interference
By Atilla Akin (aka. tom)
Maxwell Render Team
This post is about thin-film layers, and how you can use them to create extreme realism with your materials.
As you may already know, Maxwell Render is capable of simulating Thin-film Interference using the Coating component in the material composition. Up until now, we haven’t seen much usage of the Coating component other than making soap bubbles or simulating the coloration of shiny ornaments.
Coating plays a key role in photorealism for simulating everyday materials such as leather, plastics and more. Most of the time the presence of a thin-film is very subtle, but it is essential for achieving a highly realistic look.
Coating doesn’t have a roughness setting and so logically you might think it makes no sense using it on glossy/rough surfaces unless you need a polished look. Whilst it’s true that a thin-film is always perfectly specular, the final look can become rough as it follows the shape of underlying surface microstructure. At this point you need the help of fine bump mapping instead of BSDF roughness which has no effect on perturbation of surface normals.
This post presents an advanced material composition technique by blending a rough thin-film interference into the final look.
How to Make a Shiny Thin-film
Use the following steps to create a Shiny Thin-film:
- Create a new Custom material made of a single layer and a single BSDF
- Set both Reflectance-0 and Reflectance-90 to pure black
- Set Roughness to zero
- Right click on BSDF and select Add Coating
- Set Coating Thickness to 160 nm, Coating Nd to 1,8 and turn on Force Fresnel for the Coating as shown in Figure 1.
This is a typical Shiny Thin-film coating over pure black base shown in Figure 2. In some cases, you would normally disable the base BSDF but we need it stay pure black for this application. Now, it’s time to understand how to make it look glossy.
How to Make a Glossy Thin-film
Use the following steps to create a Glossy Thin-film:
- Load a fine noise texture into the Bump slot of BSDF and set a low bump value such as 2 or 1 or even lower, as you prefer.
- Play with texture tiling and bump value until you reach something similar to what is shown in Figure 2.
Figure 1: An arbitrary Coating set-up producing blue-violet colors.
As you can see, coating follows normal perturbations along the surface defined by the bump map and it gets glossy, which is something more useful for our purpose.
Feel free to play with the presented values until you reach the desired interference coloring and amount of glossiness. Don’t forget that this kind of coloring on the surface is totally view- dependent. You can also use textures in Coating Thickness and Roughness slot for breaking up the uniformity, but let’s stick to the main idea first and keep it as simple as possible to understand how it will contribute to the final look.
Shiny Thin-film Glossy Thin-film
Figure 2: The comparison of Thin-film Interference between Shiny and Glossy surfaces.
Creation of a Regular Material
Now, let’s create a new dark glossy material with Opaque Material. Type using the following values:
- Color RGB 10, 10, 10
- Shininess 35
- Roughness 35
…and Convert to Advance to be able to put the magic in. The initial preview is shown in Figure 4. It’s quite a monochromatic and boring glossy surface with dull shades of pure grey.
Blending Thin-film over Regular Material
Now, navigate to the first material you’ve created, copy that Layer including the BSDF and Coating- paste it on the top of this material’s stack, and make the Blending Mode “Additive”. You’re nearly done except that the effect is a bit overly-pronounced. So, decrease its layer Weight to 20 as shown in Figure 3, and hit render. See the comparison in Figure 4.
Figure 3: Showing the Thin-film Layer placed on the top of Material Stack additively blended with the rest.
Regular Material Material w/ Glossy Thin Film
Figure 4: The comparison of Regular Material and the Material w/ Glossy Thin Film
You will notice a subtle difference which enriches the tonality on the surface and seriously increases the photorealism. Out of habit we usually omit this phenomenon when making materials, and of course it doesn’t mean you should always use. Most exterior renders and distant surfaces will not require this subtle detail, but for product visualizations it gives huge benefits.
Regular Material Material w/ Glossy Thin Film
Figure 5: The examination of Regular Material vs. Material w/ Glossy Thin-film with Saturation cranked up.
In order to better see what’s going on, let’s crank up the Saturation of outputs as shown in Figure 5. Notice the traditional method without a coating (on the left) remains grey, while the one on the right reveals the coloration on its surface just like a photo would.
On the dummy test sphere you may not be able to appreciate the Wow-factor you are expecting, so you’ll need to carry on testing it out on different objects/scenes. I’ve also added a few more reference images showing examples of this phenomenon at work.
Figure 6: Many of these real materials have a mild iridescent coloring on their surface breaking the unrealistic constant-grey look.
Here are a few rendered comparisons showing the importance of using Glossy Thin-film for pushing the limits of photorealism.