INSECTION is the new 4 player co-op FPS in which you join a rag-tag crew of ex-military adventurers, working on various black ops. Inspired by classic sci-fi action films the game throws you into a dark, but explosively vibrant universe filled with corrupt corporations and an alien species that will rip you apart. The core of INSECTION is killing alien monsters and completing the task at hand using powerful weapons and team tactics.

Report article RSS Feed Correct Normal maps from 3ds Max in Unity game engine.

I couldn’t find a good tutorial on the web explaining how to get normal maps to work perfectly when generated from 3dsmax and imported into the Unity game engine.

Posted by Insection on May 28th, 2013
Intermediate Textures.

I couldn’t find a good tutorial on the web explaining how to get normal maps to work perfectly when generated from 3dsmax and imported into the Unity game engine 

You see, every 3D application uses its own tangent space meaning that normal maps that might seem correct in your 3D application don’t appear correctly in other 3D engines.

 So after many tries and web searching I came to find what I believe is the best workflow to properly export correct normal maps from 3dsmax to Unity.

Proper normal map export from 3dsmax to Unity:

1. Export the high resolution and low resolution meshes from 3dsmax to *.obj format

Aris Proper normals from max to unity3d_01

2. Import the high resolution and low resolution .obj files into xNormal and change the tb calculator to use Unity tangent space.

Aris Proper normals from max to unity3d_02

3. Bake!

4. Import the bake normal into Unity and change the normal and tangents smoothing angle to 180

Aris Proper normals from max to unity3d_03

There you have it, perfectly looking normal maps in Unity. Don’t forget to make sure the texture type is Normal Map - a small pop-up called Fix it, might appear under the map if you haven’t -  and that you are using the correct texture size (default is 1024 for Unity).

NOTE: since we used an external app to get our normal maps, this method applies to other 3d applications, just follow the same steps.

Post comment Comments
ProtoGames
ProtoGames May 28 2013, 4:00pm says:

or use handplane, its a big time saver
Handplane3d.com

+2 votes     reply to comment
koyima
koyima May 28 2013, 5:30pm replied:

With the main difference being that xNormal is FREE:
Xnormal.net

while Handplane costs: $150 per seat or $50 if you are a freelancer.

Free is a bit cheaper. Looks good though.

+2 votes     reply to comment
koyima
koyima May 29 2013, 4:13am replied:

Yep, true. From what I understand the best solution is what 3dsmax uses to generate (or render) them, but they didn't even have the same tangent basis in their viewport.

A studio called 3point studios made a nice workaround and they also seem to have figured out how to use this tangent basis in other engines, but a unified solution adopted by everyone would be a lot better.

I guess autodesk will have to lead the way.

+1 vote     reply to comment
koyima
koyima May 29 2013, 4:14am replied:

dude your second comment appeared as a double post, I deleted one and both disappeared. sorry. I even replied to it.

+1 vote     reply to comment
Post a Comment
click to sign in

You are not logged in, your comment will be anonymous unless you join the community today (totally free - or sign in with your social account on the right) which we encourage all contributors to do.

2000 characters limit; HTML formatting and smileys are not supported - text only

Icon
Insection
Platforms
Windows, Mac, Linux
Developer & Publisher
Glasswing Studio
Engine
Unity
Contact
Send Message
Official Page
Insectiongame.com
Release Date
TBD
Game Watch
Track this game
Tutorial
Browse
Tutorials
Report Abuse
Report article
Related Games
Insection
Insection Indie Single, Multiplayer & Co-Op First Person Shooter
Related Engines
Unity
Unity Commercial Released May 30, 2005
Related Groups
Glasswing Studio
Glasswing Studio Developer & Publisher with 2 members
Unity devs
Unity devs Hobbies & Interests group with 1,068 members