Should be considered as a general/base guideline and not the absolute/only value. This is because of various real world conditions, weathering, age, purity of material, etc. Some values will contradict each other (ex. water). Select or play with the present values and adjust accordingly, depending on the shader/engine you are using.
Refraction Index of Various Substances for 3D Modelers - click here
Lastly take special consideration of the colour space for each respective value.
Linear (Blend Layer)
38 38 38
51 51 51
65 65 65
Plastic / Glass (Low)
53 53 53
61 61 61
Glass (High) / Ruby
79 79 79
115 115 115
196 199 199
250 209 194
255 219 145
245 245 247
250 247 242
If a non-metal material is not in the list, use a value between 45 and 65.
UE4 Differences (source) (source 2)
The chart has been design for Dontnod team and with UE4 conventions for textures based on the Disney “principled” BRDF use in the Unreal engine 4. (source)
So UE4 uses slightly different parameters and handles maps a little differently compared to other shaders/engines. In this section I will illustrate those points.
Base colour, roughness, metallic, and specular inputs take 0 to 1 values.
The Dontnod chart include an unusual parameter named Porosity. This parameter is the “open porosity” of a material. It can be used for driving weathering and aging effect (Pollution, rain, aging…). More details on its usage can be found in previous blog post: Water drop 3a – Physically based wet surfaces and Water drop 3b – Physically based wet surfaces. In practice Dontnod use it mainly with the dynamic wet formula provided in the mentionned previous post.
The range is remapped from 0-1 to 0-70% of open porosity. There is real worl image to try to give a feeling of what the value mean. An extremely porous material is the clay (70%), but open porosity can vary a lot for same material, clay could also be only 50%.
Base Color simply definesthe overall colorof the Material. It takes in a Vector3 (sRGB 0-255) value and each channel is automatically clamped between 0 and 1.
If taken from the real world, this is the color when photographed using a polarizing filter (polarization removes the specular of nonmetals when aligned).
Measured BaseColour values for nonmetals(intensity only):
Measured BaseColours for metals:
BaseColor (R, G, B)
(0.560, 0.570, 0.580)
(0.972, 0.960, 0.915)
(0.913, 0.921, 0.925)
(1.000, 0.766, 0.336)
(0.955, 0.637, 0.538)
(0.550, 0.556, 0.554)
(0.660, 0.609, 0.526)
(0.542, 0.497, 0.449)
(0.662, 0.655, 0.634)
(0.672, 0.637, 0.585)
The diffuse part of the base color (the one use by the non-metallic) must be in the range of the first gradient 50-243. There is some sample values of real world material in sRGB below the gradient. Some of these values are base on real world measured material (from misc sources, not done by us) and other are have been generated by Laurent Harduin. He take calibrated raw picture of representative material, take the luminance histogram in Photoshop and use the value of the medium axis for the luminance. Then he blur the picture and take one pixel inside the blurred region and use that as the color value. This explain why in few case like the clean cement the color and the luminance doesn’t match perfectly. We also lower a bit the value to take into account the invevitable specular present during the capture.
The reflectance part (the one use by metallic) must be in the range 186-255 (not present in the chart). Some example are provided below the grey square. Most of the time the metallic color of material match what the eye see.
The Roughness input literally controls how rough the Material is. A rough Material will scatter reflected light in more directions than a smooth Material. This can be seen in how blurry or sharp the reflection is or in how broad or tight the specular highlight is. Roughness of 0 (smooth) is a mirror reflection and roughness of 1 (rough) is completely matte or diffuse.
(please refer to the above image as reference)
The gradient display roughness from 0 for smooth (left) material to 1 for rough material (right).
The grey gradient are from 0 to 255 and red segments are displayed every 1/10 with a sphere like object below to show the in-game result of the designated value.
The first row of real world image above represent no metallic object, the second row represent metallic object. Goal is to give artist a better feeling of what is roughness.
The first row of sphere like object represent metallic object, the second row represent non-metallic object.
Note: The roughness here is coupled with the BRDF used by the Unreal engine 4, it may not be compatible with other engine or offline renderer.
Roughness 0 to 1. Nonmetal top, metal bottom.
Roughness is a property that will frequently be mapped on your objects, in order to add the most physical variation to the surface.
If you have been making Materials in previous iterations of the Unreal Engine and are not accustomed to physically-based Materials, keep in mind that Roughnessmaps are where you will handle most of your Specularity texturing.
The Metallic input literally controls how "metal-like" your surface will be. Nonmetals have Metallic values of 0, metals have Metallic values of 1. Forpure surfaces, such as pure metal, pure stone, pure plastic, etc. this value will be 0 or 1, not anything in between. When creatinghybrid surfaces like corroded, dusty, or rusty metals, you may find that you need some valuebetween 0 and 1.