3dsmax normal map oddness

Hi folks.

First time posting here.

Just switched companies from one using Unreal to one using unity and testing out some engine stuff for them. Everything seems fine except my normal maps which have gone from looking fine in unreal to awful in unity.

Any idea where I might be going wrong?

in unreal its 2012-10-03_2120 in unity its looking almost inverted 2012-10-03_2120

Try inverting the green channel, it looks like your normal map is flipped in unity.

I found out that 3dsmax seems to render wrong normal maps.
After you vertically flip the map everything is fine.

Can anyone confirm this?
How´s that possible?

How is 3ds max rendering a normal map wrong for you? Max has always render normal maps fine for me. Are you using world or tangent normal maps? And what program(s) are you using to make said normal map?

Each texture baker and engine will handle normal maps differently. This is because of the way the engines translate the axis which is what each color channel represents per vertex. Unity uses the same set up as Xnormal and Blender I believe out of the box so those should be good ways to bake normal maps.

If those don’t work and you don’t like to flip the green channel each time you can also use something like handplane.

http://www.handplane3d.com/

@ twiesner
To be honest I don´t know about world or tangent space.
Where can I get info on this?
Where is it set, inside the shader? (I use shaderforge)

In general, where are the disadvantages of getting normalmaps from greyscale images?

And also in general, it´s okay for me to manually flip the normalmaps with photoshop.

In this particular case I try to make a custom watershader.
Has anyone ever tried to use animated normalmaps (mediatexture)?
I believe I need to define that mediatexture as an animated normalmap instead of a standard rgb-source.
Could this be done?

Another solution could be to use an image array (atlas) which might be slow.

This site gives a good explanation http://www.surlybird.com/tutorials/TangentSpace/index.html on differences between normal map types:

If you just want to use a greyscale image as your normal map in unity make sure you change the texture type in the inspector (click on your texture in the project hierarchy to bring the settings in the inspector) to normal map and unity will convert it.

For animated textures, scripting is most likely required where you need to target the correct map and uv tilling.

You could also use this program to convert it.

http://www.handplane3d.com/