Hey there,
The levels in a game I'm working on were constructed using Maya however I'm a max user. The problem is that whenever I export an FBX and import into the game, every mesh is sideways and not in the correct position.
My fellow artist took it into Maya and said the origins were flipped 90 degrees. He fixed it by resetting everything to 0. However I am unsure how to do this in Max. He said try using an xform but that did not work and I reset the pivot, scale, transform to no effect. Finally, changing axis from y to z in export also does nothing.
Any idea what I can do? It would be nice to find a fix for Max because exporting to Maya is just another pain in the pipeline. Thanks.
Replies
If that doesn't work, and I suspect it won't, I think it might be a problem with the way FBX exports scenes, or rather how the engine imports the FBX files. I suspect it uses 3dsmax's world node as the objects local pivot, so you have to move each object to the world 0 0 0 spot and rotate it so the objects Z axis looks down the world's Y axis.
With a little bit of scripting you can do this move/rotate, export and then move it back. There might be something floating around the web already, a lot of people have this problem with UDK but its just potion, rotation is normally fine. Although I think most people probably just keep their objects pivot at world 0 0 0.
Try orienting your geometry 90 degrees off, then reset X-Forms. Resetting the xform is just resetting the matrix3 in relation to the geometry's current position, orientation, and scale. That has a tendancy to get messed up if you are doing transforms on the object level rather than through modifiers and/or sub-object (verts, edges, faces, etc.) But those kind of errors are noticeble and usually isolated. This problem sound more like different world axis.
Max and Maya use different coordinate systems. Max uses Z up, Maya is Y up by default. So that checkbox to convert Y up to Z up is probably not doing anything because you're already working in Z up. I'm betting the issue is your game's engine. Those often use their coordinate system as well. You should be able to do a global matrix transform on all exported data to get it oriented correctly in engine, that's generally part of the export tool.
Frankly, you shouldn't even have to export through filmbox. What engine are you working with and what is the final format going into it?
Just to clarify, flipping the axis in the exporter does NOTHING, or not what you intended? I have to flip mine in the exporter and it works just fine; if yours does nothing whatsoever, you might try updating the FBX plugin. There's a button in the export window about version options that'll check for you.
If it does something, but not what you expected, I'd be curious about the import options in Maya; are they also flipping it, and it's counteracting what you've done? Are they NOT flipping it, and maybe they need to be?
Alright so I tried everything that was suggested to no avail. I also searched the net for problems with 3DS Max and XNA but only found 1 or 2 threads that never got an answer. To fix it for now, I have to freeze transform it in Maya, export to Max and any new shape made in Max must be attached to the fixed mesh and then seperated in order to pass on the "fix."
Thanks anyway.