I believe this is a legitimate bug, export of a mesh in whichever file format should have the same up axis, but I’m not seeing that. I export a mesh as fbx, get the up axis I expect to see in any app. I export same mesh in obj and it comes in flipped, believe on the x-axis. Sure, this can be changed, but shouldn’t be required. I’m painting out flaws in Mari, it having no means of changing up axis, not so big a deal for one mesh, but many is another matter. Thanks for adding to the list.
What I have noticed is that any and all programs I have used to view/edit/use .obj meshes load them 90° rotated.
Blender, Meshlab, Open Source 3D Viewer, Second Life, …
Never had an issue with it but I didn’t need to pay attention to it since it re-imports just fine.
Would it be worthwhile to ask for a new feature including rotation for mesh export?
Then again, it would also need one for import…
similar issue: http://steamcommunity.com/app/489180/discussions/0/1480982338939882018/
we will have a look at it
Hello everyone,
I tried to export the same model in .ply, .obj and .xyz, load to Meshlab but I did not have problem with axis orientation. Did you export also info files with your models? In what coordinate system is your model? Did you define ground plane? Can you plase maybe post screenshot of your export settings?
Hello Zuzana,
I did define groundplane to parent Component, default coordinate system inherited with various Reconstruction Regions. I also exported .rcinfo. I don’t use MeshLab, but see this flipped axis behavior in Maya, Mari, and Unreal. Here’s a snip of my export settings:

Here’s what I get in Maya:

Here is a shared link to same mesh with nearly identical export settings for fbx and obj, including .rcinfo files. Give it some time to sync.
Many thanks for the prompt response.
Benjy
I normally get correct obj export.
but fbx is out by 90 degrees.
I’m using 3dsmax.
That’s interesting. My fbx out of RC shows up as expected in both Maya and 3DS Max (also Mari, Photo, and UE4), only obj is flipped. If we’re both getting different outcomes, we definitely need more users to report their observations. So, just to be sure, you’re saying a component in RC that’s level to the ground plane, exported as obj imports to 3DS identically, but fbx is on its side?
Hello everyone,
I believe this is the issue of different standards for coordinate system orientation in each software. OBJ format does not carry the information about rotation. Some of the software expect, that OBJ was exported in Y-up coordinate system therefore it automatically rotates the imported OBJ to match their orientation. On the other hand, FBX is much complex format and carries the information about coordinate system and its rotation.
Hello Zuzana,
I saw your post after submitting mine, it makes sense what you report, but am now left scratching my head how this all fits together. Thanks for seeing this thread through, as the present system is locking me out from using objs in Mari for cleaning textures, regardless of what I do to the export to change up-axis.
Chris reports a different behavior than I do between his fbx and obj exports which you suggest could be explained by us using different coordinate systems. I had attached snips of my export window, haven’t ever needed to change the coordinate system, so am I seeing this right that “grid plane” is the default coordinate system? Chris, can you provide a snip of same and indicate if you chose a different coordinate system to possibly explain why we’re getting different up-axis from fbx and obj?
Zuzana, if my component lies flat in RC, whether I defined ground plane or not (and would that make any difference?), and I export the mesh in fbx, you’re saying a) RC works in z-up axis, b) fbx stores the z-up coordinate system, explaining why I can open this fbx in Maya or anywhere and maintain the correct up-axis, and c) obj does not store the z-up info, which Maya and possibly other apps misinterpret as Y-up. Yes? This is all consistent with my experience. However, when I import said obj to Maya and go to settings to change the up-axis to Z-up, my experience is that this exported obj retains the flipped axis, at least in Mari, but not in 3DS Max. That would seem to point away from RC and more to Mari not reading the change in up-axis. I’m reporting this over the Foundry forum, but to be absolutely clear, it would seem possible that if, as you say, obj can’t store up-axis info, then might this not explain why attempts to change it may or may not stick either? After all, I change the automatic Y-up in Maya to Z-up, Maya and 3DS then likes it, but Mari doesn’t.
Regardless of the reality here, wouldn’t a simple fix be to offer a Y-up or Z-up option as part of the coordinate system? If objs are automatically interpreted as Y-up, then why fight it?
Thanks,
Benjy
I should be checking my import settings in 3dsmax.
as I can flip the y, z up. when its imported into 3dsmax with obj. but i can’t do the same with fbx.
True that. On my end I noticed that on import of obj to 3DS the Flip XY-axis was checked, but when I unchecked it, it stayed unchecked. So, if I keep it checked and import obj, the fbx version importing correctly to Maya, the axis is flipped. Hmm. Just now imported same obj with that setting unchecked, comes in correctly. Double hmmm. This seems to rule out any issue in RC. Then why would Mari see either obj with wrong axis up? Whether I bring it in directly from RC or pass through 3DS checking or unchecking to flip the axis, always comes in flipped. How goofy is that?
Hi Benjy,
I can’t contribute to the main subject, but to your question about the ground plane.
I think it is phrased a bit unfortunately as “defining”, since in my view you can just edit the automatic orientation by changing the relative position within the coordinate system. Basically they are naming it after what you do and not after the program operation in the background… ![]()
Hello Benjamin,
please excuse my late answer. To answer your questions:
“Zuzana, if my component lies flat in RC, whether I defined ground plane or not (and would that make any difference?), and I export the mesh in fbx, you’re saying a) RC works in z-up axis, b) fbx stores the z-up coordinate system, explaining why I can open this fbx in Maya or anywhere and maintain the correct up-axis, and c) obj does not store the z-up info, which Maya and possibly other apps misinterpret as Y-up. Yes?”
Yes, that is correct. Defining the ground plane makes the difference when you set the Coordinate system in Export dialog to Grid plane. This is also the case when your project is not georeferenced. In such case when exporting only Grid plane coordinate system can be selected. Therefore, if you rotate ground plane, your exported model will be rotated as well. This should not happen when exporting to Project output to specific epsg coordinate system.
Regarding your comment “wouldn’t a simple fix be to offer a Y-up or Z-up option as part of the coordinate system? If objs are automatically interpreted as Y-up, then why fight it?”
You can add this to the topic Feature requests.
Thanks for clarifying, Zuzana. I’ll post the suggestion in Feature requests.