Bump Mapping: It seems simple but I can't get it to work.

Ok I know this question has come up many times but I have not seen a good answer yet, usually because of the lack of description in the question, my plan is to change that.

I’m trying to make simple bump mapping work but I can’t get anywhere. I have read the manual article here and I tried to replicate their steps, but it didn’t work. I’ve read the previous questions on here and still haven’t found an answer.

To start with, I made a new unity project and added a simple unity cube GameObject to the scene. Then I added a point light so that you could see any bump mapping on the surface of the cube.

In my favorite graphics program I made this simple bumpmap and saved it as a png:

Bump Png

Then, in Unity I imported the image as a new asset. I made sure to set it to a Normal Map in the inspector:

Bump Texture Settings

I created a new Material and set it to Bumped Diffuse. The Base texture was just a skin texture I had lying around:

New Material

Finally I applied that material to the Cube object:
Textured Cube

Here’s what it looks like in the Game:

Game View

I’ve tried using a cube model that I exported from maya with proper uv coordinates. I’ve tried using a cube from blender. I’ve also tried using different bump maps and I can’t get anything to work at all.

I believe I’ve done everything right and yet I cannot see a bump map on anything. I know that a lot of people think this is simple but it seems like I’m not the only one struggling here. Is there something simple we’re missing?

Can someone with some patience please shed some light here?
Thanks!

The answer is simple but not easy to find. In Edit → Project Settings → Player the option of Rendering Path under “Other Settings” was set to Vertex Lit instead of Forward. Once Forward was selected everything worked right. This was not an obvious answer. I’m going to leave this here for everyone else, since this answer isn’t on the forums.

It looks like you have a vertex light on the object. Normal Mapping doesn’t work well with vertex lights because normal mapping works per fragment so you should use a pixel light. Set the light to important to make sure it is a pixel light.

also try to use directional light instead point light