Jump to content
 
muella91

Positions and orientations of HMD/Tracker and world coordinate system

Recommended Posts

Hello,

I hope that the right sub area. I am using the HTC Vive with the OpenVR SDK to get orientations and positions of devices. 

Could someone tell me where I can find the exact position and orientation of the coordinate system of the HMD? When I search I find different information. Is the Z axis positive or negative in the user's direction of view? Is the CS centered on the surface of the HMD or inside the device?

How is the orientation of the world coordinate system?

 

Thanks so much for your help!

@Jad @Dario

Share this post


Link to post
Share on other sites

@muella91, We've never released official guidelines for the HMDs as there's a number of HMDs each of which have several production revisions so it gets tricky quickly. Generally speaking, the origin is directly in the mid-line of the shell, a few mm behind the dead centerpoint of the display array. I'm talking to R&D to get a more official response - which HMD are you developing with?

Here's the guidelines for Vive Tracker:

image.thumb.png.7925b9a87718445df23f878b736c8331.png

 

image.thumb.png.108075cecb53b0c5dc33c4ed163fa778.png

Share this post


Link to post
Share on other sites

Thank you for your quick response.

I am developing with the HTC VIVE (basic edition).

I have found a CAD model of the HMD (I don't think an official one), is the position of the coordinate system shown correctly here? The first picture is the view from the bottom, the second the side view. 

.Is the orientation of the coordinate system correct?  I have also found pictures where the positive z-axis points to the back (to the user). 

 

I also develop with the Leap Motion. Is the information that the offset of the origin from the Leap Motion device to the HMD origin in z-direction is 9.5 cm correct?

HTC_VIVE_HMD_BOTTOM.JPG

HTC_VIVE_HMD_FRONT.JPG

Share this post


Link to post
Share on other sites

Okay thank you for your effort. 

So I am waiting for your/R&D team official answer. A picture/sketch of the position and orientation of the coordinate system on the HMD would be great to avoid misunderstandings!

Share this post


Link to post
Share on other sites

@muella91,

So ultimately there is some variation on the answer here - depending on how you're developing your project, there could be some variations on the answers:

  • If you're developing in Unity, the SteamVR plugin automatically adjusts for the position so the developer doesn't have to retrieve the data. If you need to retrieve the data manually, you can do so via a camera object or via API.
  • The Z-Axis direction depends on your pipeline. If using Unity, +Z is forward facing (away from the user) and is left handed coordinate system.
    • In OpenVR's, the forward facing direction is (away from the user)  is -Z because it's based on a right handed system.
  • The X axis origin is direct between the center of the two lenses.
  • The Y axis origin also passes through the center points of the two lenses.
  • The Z axis is offset from a plane along the center axis' of the lenses. The offset is towards the the user and has a specific value for each HMD:
    • The offset is 16mm towards the user for Vive
    • The offset is 14mm towards the user for Vive Pro

So overall, the image you posted turns out to actually be somewhat in the right location if you're querying via OpenVR.

Share this post


Link to post
Share on other sites

Hi @muella91

Thanks for your patience here! Our team has provided official origin and reference specs as requested:

Let us know if you have any questions.

Steve

Origin.pdf

Share this post


Link to post
Share on other sites

Hello,

Just saw your answers. Thank you very much, that helps me a lot!

The PDF is exactly what I was looking for.

Cheers

Share this post


Link to post
Share on other sites

This is very helpful and matches what actually comes out of OpenVR. Can you please add the Vive Tracker to the diagrams in the pdf above? The image in the developers guide has a "dancing ballerina" optical illusion that can happy, causing ambiguous interpretations of the axes. Also, it doesn't represent what OpenVR spits out.

Share this post


Link to post
Share on other sites

Please sign in to comment

You need to be a member in order to leave a comment

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...