Cloth BRDF for Substance Designer (Updated)

I recently integrated Epic’s cloth shading model (inverse GGX and Ashkimin) into the Substance Designer shader I written a few months ago.
You can grab it here – github.com/Calvinatorr/SubstanceShaderUE

I integrated the logic of the inputs to parallel Epic’s for parity (i.e. Fuzz Colour = F0 when Metallic=1).

Vanilla shader vs Modified shader (Substance Designer viewport)
Render from Unreal Engine 4.25 (no post) for comparison
(lighting setup is different)

Inputs

What each input does:

  • Base Colour (Albedo) – Determines the diffuse colour. Metal=1 will blend the albedo to black
  • Roughness – Controls the falloff of the rimlight effect (this is actually the specular reflection). Avoid low values where cloth appears glossy. Higher values make cloth appear thick.
  • Metallic
  • Cloth – Controls the BRDF; 0=microfacet (default shading), 1=cloth BRDF
  • Fuzz Colour – Reflectance/F0/Specular Colour of the cloth. When metal=1, the reflectance is still the Fuzz Colour, not the Albedo like in the microfacet model!
Map inputs (Cloth=Mask, Fuzz Colour=Tramissive)
Use the cloth input (0 or 1) to blend between BRDFs just like Epic’s model

Sample Graph

A very basic sample graph has been provided to view how the inputs can be setup.
Comes bundled with a cloth mesh for best viewing the viewport shading

Recommendations

Use the directional light & disable IBL (3D View>[material]>Edit) to best see how light will interact.

Balance the albedo & fuzz colour.

Use roughness values above 0.3. Mid value ranges (0.4-0.8 seem to work best).

Featured

Introduction

Who am I?

I am a technical artist currently working in AAA.
At the time of this post I’m working at The Multiplayer Guys (Improbable), and previously I worked at Sumo Digital, and as a freelance technical/vfx artist on various AAA & indie projects on a variety of platforms (mobile, VR, console, PC).
I also have a strong background in 3d art.What is this blog for?

I got tired of making tools, shaders, VFX etc in a vaccum and forgetting to share it outside of my circles! So I want to share what I learn and make publicly for people. *Not affiliated with my current employer in any way

I also want to be able to provide a much heavier and more technical insight into topics people maybe don’t cover related to tech art, or maybe get left at the wayside in the art circle!

Also who knows? Maybe I will be able to share some of my work on titles I have worked on after their release.. (big maybe no promises)

What this blog is not

This is not my portfolio. Clean and simple.
If you want to see actual 3d art, I post that here (mainly for fun) – artstation.com/calvinatorr
Though I don’t do 3d art 97% of the time in my day-to-day duties, I guess I am still (technically) an artist! I still find it extremely important to remain adept at 3d art processes and even some traditional.

This is also not a place where I will post my cat pictures.. after this one.. okay no more!