Question about local axes conventions

Started by
2 comments, last by slayemin 9 years, 2 months ago

I'd like to take a survey of what people think is the dominant convention for local object axes. In the past, I have always oriented characters and objects so that they face towards the negative Z axis in their local coordinate frame. This makes sense for rendering, because it results in X+ going to the right and Y+ as the up direction when viewed from a first-person camera.

This is mostly a question of what I should make the default 'front' direction for directional sound sources. Is the convention to use Z- as the 'look' direction, or perhaps Z+?

I am living in a right-handed world, if that makes a difference.

Advertisement

I would recommend just mimicking whatever you use for the graphics system. In general, I think the method that you described is common for OpenGL based rendering, while the z-axis is flipped typically for DirectX based rendering.

However, the only important thing is that the sound systems match with the graphical systems.


I am living in a right-handed world, if that makes a difference.

very much so! <g>

i live in a left handed world (so to speak), and there, positive Z (your negative Z) is the desired direction for "forward" for the static pose of an object model in object space. its desirable for just the reasons you intuitively suspect. IE it makes life a bit easier. So in your case, a right hand world, facing in the negative Z direction is probably the best option. I can't think of any reason why it wouldn't be. i've been doing it that way (the left hand version thereof ) since i started 3d coding, which would have been when microsoft bought rendermophics (1995) and turned reality lab into directx 1.0, which was released in 1996. i was about to license reality lab for SIMSapce when MS pulled it off the market. I was forced to write my own 3D perspective correct texture mapped poly engine from scratch, since directx 1.0 was yet to be released.

Norm Barrows

Rockland Software Productions

"Building PC games since 1989"

rocklandsoftware.net

PLAY CAVEMAN NOW!

http://rocklandsoftware.net/beta.php

When I was writing my own engine, I considered (1,0,0) to be the forward facing vector because it makes the most sense from a trigonometric standpoint.

This topic is closed to new replies.

Advertisement