This is my situation:

enter image description here

I save the scene with blender no export with any processing steps.

Blender has x right y up -z into the scene for the view coordinates (OpenGL) I have x right y up -z into the scene for the view coordinates (OpenGl) Bleneder has x/y plane and z up as world coordinates I have x/y plane and z up as world coordinates

I load the mesh with assimp directly from the blend file with absolutely no post processing. The object is rotated abount π/2 on the x-axis. Why?


Blender does not have "x right y up -z into the scene", as you can see in your example image, the blue arrow in Blender represents the Z axis. It's pointing up.

You need to either rotate the object in Blender before exporting, or rotate the object as part of your import process.

Blender uses a Z up, Y into the scene coordinates system. You need to change it to match the Y up, Z into the scene coordinates system of OpenGL.

  • \$\begingroup\$ when I say "x right y up -z into the scene" I am talking about the camera coordinate system. Those coordinates I have after my scene is transformed by the ModelView matrix. The axis in the image describe the world coordine system as I have written above. Tho solution with the rotation I've done so far, but that was not my question, the question was why do i need to process anything if everything else matches. \$\endgroup\$ – Arne Sep 20 '13 at 17:13
  • \$\begingroup\$ I guess I'm still not clear on the question then. The object you're exporting is using the world coordinates, not the camera coordinates. \$\endgroup\$ – MichaelHouse Sep 20 '13 at 17:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.