# What is the accepted method of converting shininess to roughness, and vice versa?

Most modern renderers use physically-based materials and their models are often parameterized over roughness. Since this wasn't always the case with renderers, conventional assets often don't have a notion of roughness. Instead, we see "shininess" or "specular power" as a common material parameter.

I understand that there is no exact conversion between the two, but is there a rule-of-thumb / approximate way to get roughness for a material whose specular power or shininess is known?

• How about rendering a series of comparison swatches and try to fit a conversion curve? Sep 18, 2015 at 6:36

As you already note, there is no clear cut interpretation/conversion for these values. I think it is even much worse: Depending on your BRDF and internal limitations (like having defined exponents ranging from 2-2048) the interpretation is completely different. Like suggested in the comments, it might be the best to render a series with different values and fit a conversion curve until the value looks intuitive.

A few examples I was able to find some blog posts that mention something about that topic:

• At Dontnod entertainment they use a "perceptual linear distribution". Sébastien Lagarde acknowledges the problem in this blog post and writes a few notes on that.
• Brian Karis uses a squared roughness values in this Microfacet BRDF overview. This illustrates also nicely how differently roughness is used in different Normal Distribution Functions. Blinn-Phong power is here defined as 2/roughness^4 - 2.
• Frostbite uses a squared remapping. ie. Roughness = (1 − Smoothness)^2 Details about it and their entire material system is explained in section 3.2 of Sebastien Lagarde's writeup.
• This blog post suggests to define the roughness for a Beckmann distribution from the shininess alpha as:

• I wonder if it will be helpful to plot the various methods on a single plot. For example - I plotted two of your links here: i.imgur.com/YJjIMOQ.png
– ap_
Sep 18, 2015 at 17:22

Quite an old post, put based on the comments here and the posted plot, I fitted a curve leading to the following equation:

smoothness = 0.25 * shininess ^ 0.2