I have several (unskinned) models in 3DS Max. Whenever I import my models they come in at a X = -90 rotation. Resetting them to 0,0,0 makes them face down.
I have exported my model using both Y axis and Z axis as the up. I have also reset the XForm.
My modeler seems clueless as to why this is happening. Anyone have an idea?
This is just how it is. Max and Unity uses two different coordinate systems, so some conversion will happen. If you want an object to be imported into Unity with no initial values on rotation, youâll have to make those initial values exist in 3ds Max:
Push the âAffect Pivot onlyâ. Rotate X axis by 90 degrees, so that Y is pointing up.
Then the object will have 0,0,0 as rotation values, when inported into Unity
If your modeller make sure to always initiate modelling in top view in 3ds Max, local Y will be pointing upwards in Max automaticallyâŚ
Thank you Kragh. I was going to actually do this, but I thought it might be a really sloppy hack around a deeper issue. Thanks for letting me know itâs just more quirky 3D stuff.
I donât need to do any rotating in max. When exporting, I select âY-UPâ for axis, and it exports/imports fine. I always collapse transforms (etc) to clear up scaling, mirroring etc, though.
Well, you donât need to set a rotation in max, and the model will come in just fine. But it will have a rotation in Unity on its x-axis at 270 degrees (-90). If you change this to 0, your model will be rotated compared to your max-scene. And that is just how it is. If you donât experience this, Jaimi, itâs because you misunderstand what I speak about
So again; to have your model having 0,0,0 in your Unity transform rotation, you need to have it 90,0,0 in Max.
In Blender, all transforms are at 0, and these exist FBX export options for choosing which axis should be forward and which should be up, but regardless of what I choose, the model comes into Unity rotate the wrong way.
I need to wrap my head around this, but havenât managed yet. This must be a common problem with an easy solution? Both apps have coexisted for years now.
The thing thatâs weirdest to me is that if I click on the model itself in the Project - Assets - Models list, before even adding it to the scene, I can see in the inspector that the X -90 rotation already there and greyed out! (And the model rotated the wrong way in the preview as well.)
Hi, I had the same problem. It was very annoying! Finally, I was able to solve it making my 3D object as a child of a âemptyâ object making any transformation / rotation on it, not in the 3D imported model.
that isnât really a solution. Everyone can do this. But there is no point of putting an empty game object when you can have your model exported correctly.
Is still not possible to change transform when importing in Unity? I never got the reason why the transforms has to be locked; when they could be enabled and I would not need to go through EVERY single mesh I want to use, and correct the orientation.
There are cases when you canât just generate a new empty object and place the mesh in itâŚ
I know itâs probably a bit too late but I found a fix with 3ds max. Okay so I figured it out!
In 3ds Max rotate your model -90 degrees on the axis that appears wrong within Unity. (For me itâs the Z axis)
Use reset XForm on the model in 3ds Max to reset itâs rotation to 0.
Rotate the model again 90 degrees in 3ds Max to bring it back to itâs correct state.
Export!
For some reason Unity needs the model to have +90, if it doesnât it automatically rotates it⌠but if the model already has a +90 degrees rotation it does nothing and you end up having your model rotated correctly and itâs transform all 0.