Import from blender question

I’m trying to import a mesh from Blender into Unity, but I’m having 1 small problem. For some reason, the X,Y, and Z axes are getting changed.

Is it possible to change the local axes for a mesh in Unity?

That is because Unity uses Y as up whereas Blender uses Z. Another important difference is that one package uses a right handed axis and the other uses a left handed axis (I cannot remember which way around it is).

I have found that the following trick makes it a LOT easier to work with Blender models in both Blender and Unity:

  • Backup your Blender files before proceeding.
  • In Blender select all of your models and press “R” to rotate.
  • Then press “X” to rotate about the X-axis and type -90 followed by “Enter”.
  • Then from “Object” menu select “Apply” and then “Rotation and Scale”.
  • Then press “R” to rotate.
  • Press “X” to rotate about the X-axis and then type 90 followed by “Enter”.

Your model will now appear the same as it did before (in Blender), but when exported as an FBX and then imported into Unity will appear the same (except rotation will appear different).

If you want your model facing forwards in Unity, rotate it to face backwards in Blender (or vice-versa). Specify 0.5 for the import scale in Unity and then 1 Blender unit should equal 1 Unity unit.

This is a workflow that I have improved over time and I find that it makes life a lot easier.