Creating frosted glass in Substance Painter involves several key steps to give the glass a semi-transparent, blurred, and frosted effect. Here’s a detailed tutorial on how to achieve this effect.
Step 1: Setup Your Project
- Import Your Model and bake the proper texture maps. I’m using a simple model I made in Blender and a wood texture I made in a previous tutorial (link is in the description).
- Choose Your Template under the Shader Settings based on your needs. For glass, the best Template is the PBR-Metal-Rough-With-Alpha Blending. This will allow you to use the Opacity Channel.
Step 2: Add the Glass Material
- Set Base Color for Glass:
- Select the Glass layer and add a Fill Layer – naming it ‘Glass’.
- Under the Texture Set Settings, add an Opacity Channel.
- Turn off all channels except Color, Roughness, and Opacity.
- Set the Base Color to dark gray. This will assist you with the Opacity.
- Set Opacity to a value around 0.15 depending on how transparent you want the glass. Frosted glass often has a subtle opacity, not fully transparent.
- Set the Roughness to Low:
- To give the glass that frosted effect, you need a Roughness value, typically around 0.015. This will simulate the blurry, diffused reflection on the surface.
Step 3: Create the Imperfections
- Add a new Fill Layer and rename it ‘Scratches’.
- Turn off all channels except Color, Roughness, and Opacity.
- Change the Base Color to a dark gray so it will contrast with the glass and be more visible when the Opacity is applied.
- To add the scratches, you need to right-click and add a Black Mask to the Fill Layer.
- To add scratches to the glass, make sure you have the Black Mask selected. Under the Textures Panel, search for a Grunge Texture you want to use to the scratches. [Grunge Scratches Rough]
- Drag and drop this Texture onto the Grayscale Property of the Black Mask.
- To increase the number of scratches, you can increase the Scratch Tiling. [3]
- The other Parameters can be adjusted to your liking. [Balance 0.4, Contrast 0.3, Scratch Blur 0.2]
- Duplicate the Scratches Layer and rename it ‘Smudges’.
- To add smudges to the glass, make sure you have the Black Mask selected. Under the Textures Panel, search for a Grunge Texture you want to use for the smudges and replace the current Grunge Texture. [Grunge Dusty Powder Soft]
- Drag and drop this Texture onto the Grayscale Property of the Black Mask.
- Increase the Roughness to around 0.7 in order to make sure the smudges are more opaque.
- The other Parameters can be adjusted to your liking. [Balance 0.45, Contrast 0.1]
Step 4: Create the Frosted Effect Using a Height Map
- Search for a Smart Mask.
- To add frost to the glass, search for a Dust Smart Mask and drag it onto the Layer Panel. [Dust Dirty]
- Rename the new Layer and turn off all channels except Color, Roughness, Normal, and Opacity.
- To change the Parameters of the Smart Mask, select the Mask Editor. [Global Balance 0.375, Occlusion 0.8, Blur 0.2]
- For the Base Color, use a very cool, off-white with a blue tint.
- It is also a good idea to decrease the Roughness to make this Layer more glossy. [0.25]
- Duplicate the Frost Layer and rename it ‘Frost 2’.
- To add more frost to the glass, delete the Smart Mask and add a Black Mask with a Fill.
- Search for a Grunge Texture under the Textures Panel and drag it onto the Grayscale of the Black Mask Fill. [Grunge Folds]
- To change the Scale of the Grunge Texture, increase the Tiling to around 1.5.
- To decrease the effect of the Grunge Texture, right-click on the Frost 2 Layer and add a Generator. We will use the Ambient Occlusion Generator with a Blending Mode of ‘Subtract’.
- Changing the Balance will allow you to add or subtract the Frost amount. [0.15]
Step 5: Saving a Smart Material
You can easily save this material as a Smart Material for future use.
- Smart Material:
- Add a Folder and name it appropriately.
- Move all the Layers into the Folder.
- Right-click on the Folder and choose ‘Create Smart Material’.
Conclusion
You’ve now created a frosted glass material in Substance Painter! This material should have the classic frosted look with a combination of translucency, roughness, and height-based textures. You can always further adjust the material based on your project’s needs, especially when fine-tuning for real-time engines like Unreal or Unity.