Metallic Magic

Daniel Rose
GameTextures
Published in
9 min readMay 2, 2019

Metalness Maps and Workflow Explained

If you read the latest GameTextures Game Overview article on Resident Evil 2 (2018), you likely saw the term ‘metallic’ or ‘metalness’ without much of an explanation. Likewise, if you search the GameTextures library, you’ll see that many materials come with a metallic map.

Users, especially those who are completely new to the art of creating textures or new to Physically Based Shading, often get tripped up by Metalness. It’s very understandable, as most won’t hear or see the term metallic or metalness outside of occasional heavy metal or thrash music shows. As I type this draft, Microsoft does not have a correct spelling for metalness and thus I currently have 5 of my 8 mis-spellings attributed to a word not yet added to an online dictionary.

I’m hoping to change that a little.

A Metallic, or Metalness, map, is a black and white texture that acts as a mask that defines areas on a texture set or material that behave like a metal (white) and do not (black).

Confused? I will attempt to clarify how the map works and why it’s used, with some help from Allegorethimic and Marmoset. First we need to understand how real life metals work.

How Real Life Metal Works

Reflective Metals, called Conductors, operate differently than most other materials, called dialectics. Bronze will be our example metal for this exercise.

On the left we have a pitted bronze material, while on the right we have pure rust. One is metallic, the other is not.

Reflective metals don’t have observable reflected diffuse colors (color information that is reflected back to the viewer). When using Physically Based Shading, values can be measured using a color table and flat lighting solutions or uniform lighting solutions. When bronze is measured with the proper equipment, it does not have a diffuse reflection value, it’s practically black. Remember that the colors that we see are the colors that are reflected back to our eyes. A red shirt is absorbing all of the other light rays except red, which is being reflected out into the world. With reflective metals, the wavelength that is visible to us as red is diffused to such a degree that we can’t see it.

The new question becomes “if bronze has no reflected color, how can it look shiny and reddish brown?”

When bronze and other reflective metals like it are hit with a ray of light, the reflective properties of the material influence what we humans interpret as color. These properties are often called ‘specular’. Specular Reflection, Refraction, and Color.

· Specular Reflection is the highlight brightness of a reflected color.

· Specular Refraction is how reflected color and brightness is disturbed by other material properties, often by something like glass.

· Specular Color is the color of the Specular Reflection.

These three Specular Properties have been editable and used by pre-rendered artists (Vray, Arnold, etc) for years, at least since 2001 with the release of Pixar’s Monster’s Inc. It wasn’t really until 2013 that games starting being released that had various versions of a physically based pipeline (Remember Me was my big introduction). Prior to that point, most games made use of a “specular map”. This texture was usually grayscale (although some engines supported color) that would provide fake specular highlights to materials. Where the map was black, there was no highlight. If the map was white, you have a rather powerful highlight. At the time, this was pretty straight forward to work with. You would author your asset and bring it in game and see how it looked. If your lead thought it needed tweaking to match the ambiance of the scene, you tweak your textures. If the lighting in a level changed, you change your maps. It was straightforward, but it led to a lot of guess work and inconsistent results. It also meant that having a library of assets that could be used across various games was not an option, as you could have one model with hundreds of possible texture permutations.

Today, modern game engines handle lighting and shading much like pre-rendered solutions do. Because of this, artists now have the ability to break free from the idea of a ‘spec map’ and are able to embrace a physically plausible lighting workflow. Materials, if authored properly, should react realistically in a multitude of accurate lighting setups. While there will be exceptions, this generally means that if your work looks good in a standardized test scene, it’ll look great in game. This is a huge time savings for artists, and it means that we can make more of the things that go into games.

Real Time Standards: PBR-Specular and PBR-Metallic

The two main PBR Workflows, Metallic and Specular. Sourced from Allegorethmic’s PBR Guide Vol 2

There are two PBR Standard workflows in real time rendering; PBR-Specular and PBR-Metallic. Both use the same laws of energy conservation and both use the same basic BRDF functions. PBR-Metallic makes use of Metallic/Metalness and Roughness inputs while PBR Specular uses the more traditional (to raytrace users) Specular Color and Glossiness inputs. Interestingly, when the PBR iterations of the two major game engines available to the public launched, each engine made the choice to pursue a different workflow. Unreal Engine 4 opted for PRB-Metallic, and Unity 5 went with PBR-Specular.

Both workflows give great results while having unique pros and cons to themselves.

The different maps applied to a single asset.

The PBR-Specular workflow requires artists have a better grasp of how specularity works in renderers like V-Ray. A PBR-Spec material uses the following base maps:

· Albedo: The recorded Albedo Color of the material. Our bronze would have a black Albedo.

· Specular Color: The color of the specular reflection, generally white for non metals. For reflective metals, this would be the color we see (so a reddish/brownish color for our bronze).

· Glossiness: The amount of gloss/highlight a material has. White=Totally Glossy while Black=Totally Matte

· Normal: Surface Normal Details

PBR-Specular relies on a Specular Color map working with the Gloss Map for proper specularity. This has a pretty nice positive, and a huge negative, especially when it comes to game development.

Pro: Specular details are all contained in an RGB color map. Since this map is using all thee color channels for data, it gives a very nice result.

Con: Because a full color map is being used for increased accuracy, you lose the ability to pack black and white maps into the RGB channels.

PBR-Metallic is a simplification of the PBR-Specular workflow. It’s great for newer artists or artists who maybe be having trouble transitioning from the older ‘spec map’ workflow to PBR. This was my case in 2014. PBR Metallic relies on the following base maps:

· Base Color: This is similar to an Albedo Map, but it uses ‘perceived color’. This means that you also place the color of a reflective metal in here (so bronze would be would be a reddish/brownish color).

· Metallic: This is a black and white ‘mask’ that tells the shader “these parts are metal” or “these parts are not metal”. It generally should be completely black or completely white, but there may be exceptions in some cases.

· Roughness: This is how rough or smooth a surface is. White is completely rough, while black is completely smooth.

· Normal: Surface Normal Details

PBR-Metallic has it’s own set of pros and cons too. However, Metallic workflows are often best suited for game development because of it’s memory friendly nature.

Pro: Since Metallic is Black and White, it can be placed in a color channel in a ‘packed map’. These maps place different grayscale textures in each available color channel (Red, Green, Blue). When using PBR-Metallic, MRA maps (Metallic, Roughness, Ambient Occlusion) or something similar is a common way to save on memory.

Con: Because Metallic Maps have less information in them than a Specular Color map and are operating as a mask in the shader, artifacts can occur. Sometimes it’s minor, but occasionally it can be a big issue, especially in games with complex surfaces right where the player camera is.

An example from Marmoset of the artifacts that metalness maps can introduce.
Allegorethmic has noticed that artifacts can be reduced with proper texel density.

Personal Example of Confusion

I noticed something while I was putting finishing touches on this article (usually gathering images and preparing a barrage of links to my sources). I was in need of examples of metallic maps and specular color maps from either myself or the team at GameTextures and while I browsed my portfolio on Artstation, I came across this prop.

This was made in 2014 with Maya, nDo2, and Photoshop. It’s a terminal from Halo 4.

At first glance, this prop doesn’t have anything wrong in it’s texture. Everything has a metallic sheen except the rubberized design on the front faces and on a few spots on the side, as intended. Now, take a look at the texture.

This was in my portfolio for 5 years…

My Albedo and Specular Color maps are all wrong.

When working with PBR-Specular, pure metallic aspects of your material or prop should be black in the Albedo map. The vast majority of this asset should have been black (remember, reflective metals have their color determined by their specular properties).

Those of us who didn’t have PBR experience had some lessons to learn while making the shift. While I learned mine, it would appear that some of those learning experiences had been on display for some time.

For the astute observer, I titled my gloss map ‘roughness’, but it in fact is a proper gloss map.

PBR-Metallic: The Popularity King

If you open up the most recent version of Unity or Unreal, you’ll find that both are using PBR Metallic as their default PBR standard (although Unity continues to have support for Specular). Substance Designer has PBR Metallic as it’s default material authoring template. Vray Next is even adding Metallic support to it’s standard shader.

Metallic workflows, are everywhere. Why?

As I shared above, PBR Metallic is easier for artists to understand AND it also makes it a bit easier to save on texture memory. Epic Games, the creators of the Unreal Engine, shared as much in an early talk about their engine. They found that it was more difficult for artists to screw up authoring content in a physically correct way when using the metallic workflow because there was one less variable to consider. These two issues out-weighed the fairly modest shading improvements that PBR Specular can display.

A set of assets I did for an indie game in 2015.
This is a truly proper map breakdown. Notice how metal is shown only in the scratched areas.

PBR Metallic might be the default standard, but it is absolutely worth truly learning about how both PBR workflows operate. This is doubly important for any artist who works in other mediums, like Vray, as the PBR Specular Workflow is often the only option in raytraced renderers. Having an understanding of how specularity works can only help with other projects in the future, regardless of specific workflow.

Sources

Please visit the sources below for far more information on PBR, Metalness, Specular Workflow, and how to use their fantastic tools that the members of GameTextures use as part of their every day life.

The PBR Guide Part II, Allegorethmic, https://academy.allegorithmic.com/courses/the-pbr-guide-part-2

Physically Based Rendering and You Can Too, Marmoset, https://marmoset.co/posts/physically-based-rendering-and-you-can-too/

PBR Texture Conversion, Marmoset, https://marmoset.co/posts/pbr-texture-conversion/

--

--