Sign in to follow this  
p0is0n

Creating normal maps from diffuse map

Recommended Posts

Hi all, I'm looking for a program that can take in the texture for a model (the diffuse map) and create a normal map, specular map, and displacement map. The only program I can find (which seems to do it perfectly btw) is PixPlant : http://www.pixplant.com/ The only problem is that it costs $175 (although it can be used as a stand alone program, and not just a photoshop plugin) Does anyone know of a free program that can do the same? It cannot be a plugin for photoshop as I do not have photoshop. Ideally I want just a drag texture here, click here and maps are generated. Most likely too much to ask, but no harm in it :) I tried : MapZone but can't get that to load a texture, just generate procedural ones. ATI's normal mapper, but I can't get it to work. and xNormal but that doesn't seem to generate good results (although maybe i've not looked into it enough to figure out the right parameters) If no-one knows of any programs out there, does anyone know how I would go about creating normal, specular, and displacement maps from a diffuse map/texture (not sure about the terminology on that one) Thanks! [Edited by - p0is0n on June 4, 2009 4:38:14 PM]

Share this post


Link to post
Share on other sites
Quote:
Original post by p0is0n
If no-one knows of any programs out there, does anyone know how I would go about creating normal, specular, and displacement maps from a diffuse map/texture (not sure about the terminology on that one)
Note that generating normal/displacement/specular maps from a diffuse map generally yields very poor results.

Normal and displacement maps are best generated from a high resolution (and more detailed) copy of the 3D model, while specular maps should be artist-created at the same time as the diffuse map.

Share this post


Link to post
Share on other sites
@MJP
CrazyBump does look pretty awesome. Plus it is a lot cheaper. Thanks for the link. If no-one comes back with any others that are cheaper or free I might have to go for it.

@ApochPiQ
Thanks for moving it. I wasn't quite sure where to post this.

@swiftcoder
Thanks for the info. However at the moment I am willing to sacrifice quality in the normal and displacement maps for simplicity and progress. As for the artist creating the specular map. I understand why it should be that way but I am using free models and most of them do not have this data.

I think that xNormal was making the normal map from the model itself as swiftcoder said it should be made, but I ended up with garbage results. Maybe I put some wrong values in, or the normal map needs to be wrapped to coincide with the diffuse texture coordinates ... idk. Either way even following a tutorial I couldn't get it to work.

Thanks for the replies!!

Share this post


Link to post
Share on other sites
ShaderMap Pro looks pretty good. Plus the price is about right :)

Although I really did like the look of CrazyBump it could even give me a model preview on 3ds models, strange as it wasn't listed as a supported format, but a good strange lol. Just a shame it costs $100 (well $99 but still).

I'll probably get ShaderMap Pro in the morning. I know the command line version is free, but I've never liked command line programs.

Thanks a lot for all your help!!

Share this post


Link to post
Share on other sites
As swiftcoder says, creating a normal map from a diffuse map isn't the ideal solution. That being said, I have ShaderMap Pro and it does a fair job of creating a normal map and specular map from a diffuse map or photo (it creates height maps and ambient occlusion maps as well). As sybixsus says, it's about $20 ($19.95 actually).

Share this post


Link to post
Share on other sites
For quick&dirty maps, I ussually convert the diffuseMap to a grayscale image. You can do this with MS Paint... Now you have a heightMap, sort of (certainly not correct in all cases, but hey, don't use diffuseMaps at all in that case!). Anyhow, white=high, black=low, gray=middle.

Maybe you need to invert the colors for a better representation. If you have somewhat better paint tools (Paint Shop Pro, Photo Shop, or try the free Gimp/Paint.NET), use "Contrast Enhancement" to make the height differences stronger or softer. If your normalMap is very noise, take down the contrast. Also applying a (Gaussian) blur on the heightMap often helps reducing artifacts. If you are really into creativity, you can also adjust the grayscale map by hand of course, or add a fine "grain" for small details.

When your heightMap is ready, there are several (free) tools that convert it to a normalMap. Look at the nVidia website for a Photoshop plugin. I thought ATI has a "height to normalMap convertor" as well. Plus I found another free tool somewhere on a Doom3 development forum.


As for specular maps, ussually the diffuse grayscale map works here as well. Again, use contrast enhancement, blur, de-noise and/or other filters to get a proper map. Really, you don't have to be an artist to create somewhat proper maps. On the other hand, don't expect superb normalMaps either. You often need a creative hand for creating the more complex maps, and the free tools might miss some features in specific cases.

Greetings,
Rick

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this