Normal maps from images

Hello, I’m wondering what the best way to create normal maps from images is. I’m familiar with baking geometry into normals, but that just fakes geometry. When you’re texturing something and need to have it affect normals, you can select the “no RGB” option and let the gray scale image affect the normals, but this is not how true lighting works. When baking normal maps, you get a colored image, where the red, green, and blue values for each pixel affect x,y,and z coordinates of the rendered normal, which is much more realistic. Is the gray scale method the only way to go when it comes to image textures such as photos?

The create a normal map from an image, I’d say your best bet is the Nvidia plug-in for Photoshop…I believe it works for Gimp as well.

gimp version
http://nifelheim.dyndns.org/~cocidius/normalmap/

Thanks a lot bruceape, that works great!

i know another way taht you can do this
but more complicated and not as fast as using gimp or other !

you can use the material node to make a normal map
it looks tht it does a nice job
but before you have to make a displacement map with the picture then do the normal map with nodes

so it can be done but i guess more complicated !

anywayPM me if you want to know more about it

hope it helps

If I’m understanding you right, you could also use the picture to displace a high resolution plane, and then bake the normals onto a regular plane and save the resulting image? Still, using Photoshop is faster and easier so I think I’ll go for that.

There are more exact ways of doing this.

My favorite way involves taking five photos of the scanned surface: one with flash parallel to the camera axis to make a color map (diffuse) and four grayscale photos with flash going from each direction (north, west, south, east). You can then assign these four images to X (0-127), X (128-255), Y (0-127) and Y(128-255) ranges (and compute the Z value so that the normal vector has unit length). A somewhat simpler method is to render the normals of a truncated pyramid and then just use your photos as masks with each side’s color.

A less precise method uses only two photographs. A diffuse map shot with flash parallel to the camera axis and a greyscale bump map shot with no flash in ambient light. Because deeper features will have more ambient occlusion going on, they will be darker. From this data it’s easy to reconstruct a normal map.

Interesting method eridane, that’s something I’ll have to experiment with a bit. It’s definitely more complicated, but sounds like it could yield interesting results. Thanks!

Try this tutorial:

works fine with gimp+normalmap pluggin as well.

Interesting article…
The rocks in the video look very nice! But too bad there is no comparable video of the single pass normal filter. I can’t judge the benefit of the layering+blurring without it.

The downside of this method can be seen in the manhole example though: Areas that are supposed to be totally flat (around the emblem) look inflated and wavy. That’s ok for rocks or cobblestone but not for the metal manhole!
The technique should be limited (masked) to areas that can benefit from additional depth and shouldn’t be applied to the whole texture.