This blog describes my journey exploring storytelling - words, images and the sensations they generate. The lot, basically.

Friday, December 13, 2013

MARI: Distressed painted metal texture from scratch - Part 2

"Start with what is known, and what is hidden will be revealed."  - Rembrandt van Rijn


We'll take Rembrandt's wisdom and the approach of building up our textures layer by layer in order create the secondary maps (bump and specular) we need for the jerry can. For the first part of this tutorial, which looks at the diffuse colour maps for our jerry can, please go to

The spec map is often considered the most-valuable-player of all the texture maps. When objects are so far away from the camera, that the diffuse map cannot be made out anymore, you can usually still see the effects of the spec map. The opposite end of that spectrum would probably be bump maps, which are the first to go as the camera pulls away from a model. The spec map will simply put control how shiny our object appears; how much of the light that hits the object is reflected back. Black equals the light-eating power of a black hole, where white equals the mirror shine of chrome.

Anyway, let's start putting together the spec map for the jerry can, using what we already have of information in the diffuse map.

To this end we will duplicate the Diffuse channel and use the duplicate for our spec map. In the Channel palette, right click on the Diffuse channel. Select Copy from the menu. Right click in the empty space on the Channel palette and select Paste from the menu. Now we have a duplicate of the Diffuse channel. Double-click on the new channel named "Diffuse Copy" and rename it to something suitable, like Spec.

In the Layers palette for the new Spec channel, add an HSV adjustment layer as the top-most layer of the stack. Take saturation slider all the way down to 0, and now our duplicated diffuse channel is all greyscale as a spec map needs to be.Turn off the visibility (click on the little eyeball icon next to each layer) of all the layers in the channel, and then we will bring them in as need be.

Add a procedural layer (Basic - Color), set the colour to black (don't use complete black, or white in your textures, it messes up the shader math); put 0.114 in each of the RGB channels.

This "black" will be a base for the rubber spout of the jerry can. So why don't you add an empty layer group and drag the procedural color layer into the group. Add a layer mask to the group by selecting the group, right clicking on it and selecting layer mask - add mask. Whether you go for Reveal All or Hide All, paint with pure white or black in your layer mask, so only the spout is affected by the procedural color layer. For good measure, I have added a white color layer underneath to help our spout to stand out.

Other than the procedural layer with the black colour, which we have just inserted at the bottom, your lowest layer should be your aluminum base layer. We need that. Click on the eyeball left of the layer in the layers palette to toggle its visibility on. The aluminum texture will both give a nice neutral base to build upon as well as lot of organic details and variation, which suits a metal can. So far, so good.

Next I want to add a touch of ambient occlusion. In corners dirt and dust will gather automatically due to inaccesability, which makes it more unlikely to get wiped off by regular use. Most kinds of ordinary dust and dirt will lower the shininess of a surface, so using ambient occlusion to make these areas darker works well (darker is less reflective or shiny in our spec map, mind you). A tiny touch will do.

Click on the Add Procedural Layer button in the layers palette. Select Geometry - Ambient Occlusion. Set the blend mode of the layer to Multiply and the opacity to 0.150. If you don't have something like this...

... it might be because you haven't calculated your ambient occlusion yet. In that case, select your jerry can as an object. Go to the Objects menu and select Ambient Occlusion. Mari will calculate for a while, and then you will have your lovely ambient occlusion.

Remember your Dirt layer? Turn that back on (click on the eyeball to the left of the layer name). This is what I have:

Next we want to bring the scratches back into play. If memory serves, the scratches layer from the diffuse map was set to Hard Light blend mode and 0.798 opacity. That should do nicely for the purpose of the spec map as well, so turn the layer's visibility back on.

The spills we added from down the front from the spout and to the base of the can also need to be in the spec map. However, they were set to Vivid Light blend mode before and 0.552 opacity. Change the blend mode of the Spills layer to Overlay and crank the opacity up to 1.0. Which should look something like this.

Onto our Dust_broad group. Therein we painted a broad and generic dust layer, masked by Ambient Occlusion. Turn the visibility of the Dust_broad layer group on. We should be able to use the blend mode (Overlay) and opacity as is. So far, so good:

We also have the Dust_detail layer group, where we added more specific dust around the base of the spout etc. Turn on the visibility of the Dust_detail layer group and make sure the blend mode is set to Overlay and full opacity.

I am looking at our spec map and I would like the scratches to be more pronounced. As light moves across the jerry can, the scratches would be a very distinctive feature. Aluminum has a dull glow, as the surface is oxidized over time, also you have the paint, which obscures metal, but where the scratches are, the aluminum will be naked and in some places freshly scratched - revealing the full extent of its shininess in places. Copy the Scratches layer (Right click on the Scratches layer and select Copy and then right click again and select Paste). We still want all the light and dark information of those scratches cranked up to full effect, so blend mode should still be Hard Light. I further took the opacity up to a full 1.0. 

So that is the scratches. How about rust? How does rust affect specularity? In my experience, rust dramatically dulls the reflectivity of metal. What is least shiny thing you know? From where I am sitting, the carpet underneath my feet has next to no reflection. Rust is pretty close to that. Do a quick google search for rust and you will see that there are a lot of different types of rust, which again would mean a lot of different looks of rust. Of course it not completely diffuse, but close, and so we aim for darkness where we have our rusty patches.

Our rust layer was set to multiply. Turn on the visibility and crank up the darkness it leaves by changing blend mode to Color Burn. It should look something like this...

Zooming close in on the rust, I love the grainy details. Rust is never very even in its colour, density and distribution. That should correspond nicely with the crystalline quality of the surface of rust.

The very last addition to our spec map will be our grime layer. Turn the visibility of the Grime group on and change the blend mode to Color Burn. I want this layer group to help create break-up and variation of the larger metal surfaces, so we need Color Burn's increase of contrast to help with that. Change the opacity to something in the range of 0.25, which gives us our finished spec map:

Now that we are done, going back over the project, a few things could be improved. Perhaps we could add just a touch of noise to the rubber spout base, to further break up the base (apart from what we have done with the layers of dirt, dust etc.). We could also make a differentiation between the exposed metal and the painted metal.

In general it is worth noting most, if not all, of what you need for your spec map, you should already have in some shape or form in your diffuse (colour) map. Also, a spec maps best friend is variation. So if you have large stretches of the same material on your geometry, make sure you consciously look to break it up in your spec map. Unless your object is fresh from the factory, this is a really key point. On a show I worked on, we had a number of spaceships, which needed to appear relatively clean and sci-fi'ey, but as a result the colour maps were struggling a bit to convey the needed realism - solution? Quietly make your spec maps absolutely filthy...
What is left now, is just to create a bump map and setting up our shaders and lighting. That will be the topic of the last two posts in this mini-series. Then you should have a render looking more or less like mine:

This tutorial continues with an overview of creating a bump map for our jerry can here.
Did you find this useful? Leave me a comment, share the post via your favourite social media or drop me an email about things you'd like to see covered.

No comments: