from the release notes of Unity 3.5.1 :
Implemented better detection of imported material types. Unity uses normal-map and transparency properties (texture or factor) to apply one of the shaders: “Bumped Diffuse”, “Transparent/Diffuse” or “Transparent/Bumped Diffuse”.
How is that achieved in with 3ds max ? how to set up the materials in MAX in such way, that after exporting them Unity detects that they have Normal, Specular or other texture instead of just Duffuse ?
If you set your opacity to something bellow 100% in 3dsMax, then Unity will take that opacity-factor and assign to diffuse.a value and it will assign transparent shader to a material.
If you assign transparency texture in 3dsMax, then Unity will assign transparent shader to a material. Note, that Unity won’t take the transparency texture from 3dsMax, because Unity doesn’t have separate slot for transparency texture and uses alpha channel from diffuse texture instead. So correct way to do it is to have diffuse texture with transparency in alpha channel and use that texture for both diffuse and transparency slots in 3dsMax.
If you assign normal-map texture in 3dsMax, then Unity will assign bumped shader to your material and will assign your normal-map texture to correct slot in your material. Note: that 3dsMax supports bump-maps (the black&white “heighmap” thing) and normal-maps (the colored thing based on normals). Unity imports only normal-maps.
If you set UV offsets/scale on diffuse or normal-map textures, Unity will import that.
Unity does not import Specular settings.