Tutorial - Specular Map With Bump

This tutorial will cover how to make a bump and specular map, them properly fuse them for use in a texture in Photoshop CS3. It will also cover the VMT commands.

For some reason you cannot use a separate specular map in textures so you must fuse it with the bump map, this is done by turning the specular map into an alpha mask.

This assumes that you already have a basic tiling texture set up and exported as a .png

Now we must make a bumpmap. First we should create a new layer with the same texture on it, like so.

Now the easiest way to create a bumpmap is to use the NVIDIA Normal Map Filter

If you don’t have this plug-in, you can download it here.

Assuming you have the plug-in installed. You must navigate and enter it.

Use the settings shown here for now (You can tweak settings later)

After clicking “OK” you should see something like this.

This is your bump map. Don’t export just yet though. We need to create a Specular map and fuse them.

Lets un-check the visibility of the bump layer for now as we will not need it for awhile.

Create another duplicate Layer of the base texture. The easiest way to create a specular map is to desaturate and play with the levels.


In the levels screen you can play around with it until you get what you want, you want a high black-white contrast but you also want it more black than white unless you want it really shiny.

As you can see here, I usually slide the top sliders so they are at either end of the hump, then I drag the white slider on the output levels toward the black to darken it overall.
Tweak it until you’re satisfied then click OK.
Select your specular map with Ctrl-A and Copy it with Ctrl-C, we will need this later so don’t copy anything else.

We’re not done yet though, we must fuse the specular map with the bump map. To do this lets un-check the specular maps visibility and look at the bump map again.

We need to create a mask for our specular map to go on.

Now click the Channels tab (with the bump layer selected)and select and un-check/check the visibility as shown here.

Keep in mind that your layer names might be different.

Now paste your specular map that you copied earlier here with Ctrl-V and go back to the layers tab. Check the visibility so it looks like this.

Then your bump map should look something like this.

It doesn’t look like much of anything at the moment, don’t worry though, your bump is still there, just very transparent in some areas.

Export your new bump map as a .png

I’m going to assume you know how to set up the file structure for textures so all I need to show you now is the VMT

Because we have now embedded the specular map into the bump map we must use a special command to tell the game this.
This command is

"$normalmapalphaenvmapmask" 1

My final VMT looks like this

	"$basetexture" "Janooba/Metal/metal_Galvanized"
	"$bumpmap" "Janooba/Metal/metal_Galvanized_bump"
	"$envmap" "env_cubemap"
	"$normalmapalphaenvmapmask" 1
	"$envmaptint" "[0.3, 0.3, 0.3]"
	"$surfaceprop" "Metal"

And here’s what the texture looks like in-game!

Okay so it’s not that great, but that’s why we save the original Photoshop file and tweak it!

Good luck out there Gordon… You’re gonna need it

Specular maps are crucial for for that kind of believable realism. At this point I actually can’t stand textures that don’t have specular maps when they obviously need one.

If you don’t have Photoshop, use Paint.NET and get the alpha mask plugin. For your normal and SSbump needs, use this program to create them.

I personally prefer Crazybump, but Extra Large detail and that other shape finder thing make everything look like tinfoil. I always set those very low. Other than that, it’s nice. It generates just about every type of map you could ever need. normal, spec, disp, occlusion, and even fix things like shadowing and highlighting on the diffuse map.

crazybump generates me some fucked spec maps though

Most inexperienced users claim that it makes their textures look fluffy, but that’s just due to them not turning down medium, large, and very large details down.

Pretty good tutorial.

In the words of Wheatly, “this is amazing!” I shall put this to good use.

You could also use gimp in it’s normal map plugin.

What exactly does a specular map do…? I’m a tad confuzzled.

Specular maps help with reflections. Afaik, The white part is the shiny stuff, the grey/black is the less shiny.

That is inverted if you hie the spec map in the base texture or normal map though.

Its only inverted if its in the basetexture, not the normal map.

Any tutorial on how to work with that SSbump generator? I don’t understand it at all. And the site isn’t helpful.


I’ve never used it so I can’t help you there, sorry

SSbump generator is rather poor. Works almost ok on fine things like brickwalls, but if you want a really kick ass rough cliff bumpmap or something you gotta do it manually.
I don’t know about that other one though… x-normal or something. havn’t tried.

Here is how to use SSbump.

  1. Run SSbump.(hurr)

  2. Click the “generate normal map” button. It is the only button with a “B” on it.

  3. In the new window on the right, click the “…” button next to Image File. Choose the image or VTF you would like to create a bumpmap for.

  4. Click the “Add Layer” button in the bottom left corner, represented by a green plus sign. For now, just choose “default” in the new window and click OK.

  5. Click “preview all layers”, represented by an eye with a green plus sign. A new window will be displayed with your normal map at default settings.

  6. Use the sliders on the right to adjust the normal and click on preview all layers again to update the window and see your changes.

  7. Adding additions layers such as medium and large will create larger (not taller) bumps, this is extremely useful for terrain textures and makes them much more believable. Avoid using it on tiles and bricks, it will make them look fluffy.

  8. The order of layers is important. They must by in order of largest to smallest down the list, or else you will not see medium or large detail layers.

  9. When you are satisfied with your normal map, click the save button. Save in TGA, saving in VTF results in a black line at the top of the normal and makes fugly dark line in the textures in game. Once you have it saved in TGA, import it into VTFedit.

Hope that helps. I assume you will have some idea of how to use the SSbump tools in there as well after toying with this.

You have to use large detail layers, you can make very badass cliff textures that way.

My result from the tutorial (the wall):



Doesn’t this make a normal map? I was rather referring to making an SSbumpmap:

They look a lot different.

Oh my bad, I DID question it wrong, this is my actual question.

How come when i use Crazybump’s bumpmaps that it looks like the textures are self shadowing in game? Even though i dont have the parameter in the VMT




SSBump (self-shadowing)