Normal Mapping in Unity

I’ve created a 3D model and generated my normal map from 3dsMax. Now, I’m in Unity and it just doesn’t look like the normal map is being applied. I’ve been applying a material made in Unity with Bumped Diffuse and adding my normal map to the “Bumped” section and my texture map to the “Main” section. So…

How does one apply a normal map to a mesh in Unity?

Also, do normal maps work in the trial version? I do not own a full version.

Any information or links are greatly appreciated. Thank you.

Normal maps work in all versions of Unity.

Is your source texture a normal map (bluish rainbow) or a height map (black and white)? If it’s a height map, you need to check the “Generate Normal Map” box in the texture importer.

Check out the manual for more information on normal maps.

Thanks for the response.

My source texture is a normal map (blueish rainbow), not a height map. I’ve already looked at Unity’s manual and there is no information about normal maps.

Where is the section on how to use NORMAL MAPS in Unity?

Not a heightmap, not a bumpmap, not a specular map, a NORMAL MAP.

Anyone have the answer?

Aside from what Daniel already showed you, the shaders with “Bumped” in the name will do:

Unity calls the normal map a bump map. What do you think the difference is between a “bump map” and “normal map”?

Anyway, it sounds like you already dragged things to the right places. Are you not importing or generating tangents? Normal maps won’t work without them.

Unity and its documentation use normal/bump/height quite carelessly. I believe this will be improved in 3.0.

Unity always means “normal” when it says “bump”. The only time height maps are ever used is for shaders with “parallax” in their names. Even then, the height map is in the alpha channel of the normal map. So you always need a normal map for any of Unity’s built-in bumped shaders.

Anyway, perhaps you can provide a screen shot of your setup?

Have you got a light near your object? Normal maps in Unity need something to react with. That’s why I always put a single real-time light in every room, tagged to work on a layer that all my (Normal Map equipped) furniture is assigned to.

I was having a similar issue, trying to get a normal map to show the Normals, not Bump, from a Hard Surface modelling tutorial http://vimeo.com/11052708.

Once I told the FBX to Calculate Normals, instead of import, the Normals starting faking the detail. Also on the Blender Normal Map in Unity, leave it as a Normal map, without the generate from greyscale, or you will get a bump map.

PS. adding an extra realtime light that affects only objects as pe Clamps helps see the effect, especially if you are doing lightmapping.

Apps used, Blender 2.57 and Unity 3.4.

Cheers