Question on Oculus Tracker's position

10 views
Skip to first unread message

Sebastien Chevriau

unread,
Sep 29, 2016, 5:24:13 AM9/29/16
to vr-geeks
Hi all,

A quite simple question but I don't find any clear answer.

In Unity, how can we manage precisely the tracking referential of the Oculus Rift (DK2 or CV1) aka the tracker position ?
Is it magical ?

If we don't use the Profile Data of the OVR Player Controller, the Y pos seems to be linked to the Height of the Player Controller (sort of Height/2 + 0.5), but... and then ?

So if you have any doc or trick to control this, I'm a taker.

Regards,

Sébastien Chevriau
Research Engineer in Virtual Reality
Team ERgonomie et COnception des Systèmes (ERCOS)
Institut de Recherche sur les Transports, l'Energie et la Société (IRTES, E.A.n°7274)
-------------------------------------------------------------------------------------
Université de Technologie de Belfort-Montbéliard
90010 Belfort cedex - France
Phone: +33 (0) 3 84 58 37 42 - sebastien...@utbm.fr
Campus of Montbéliard - Office M310
-------------------------------------------------------------------------------------
Find all informations and news about UTBM on our website : www.utbm.fr
on twitter @utbm_fr and on http://www.facebook.com/myUTBM
New website of ERCOS team (in french) : http://ercos.utbm.fr

Jan Ciger

unread,
Sep 29, 2016, 9:56:52 AM9/29/16
to vr-g...@googlegroups.com
On Thu, Sep 29, 2016 at 11:24 AM, Sebastien Chevriau <sebastien...@utbm.fr> wrote:
Hi all,

A quite simple question but I don't find any clear answer.

In Unity, how can we manage precisely the tracking referential of the Oculus Rift (DK2 or CV1) aka the tracker position ?
Is it magical ?

If we don't use the Profile Data of the OVR Player Controller, the Y pos seems to be linked to the Height of the Player Controller (sort of Height/2 + 0.5), but... and then ?

So if you have any doc or trick to control this, I'm a taker.


I am not quite sure what you are after. 

AFAIK, Oculus is using a head & neck model for the HMD, so when you turn the head, the center of rotation is not in the center of the head (or the HMD). I believe this can be turned off by using some poorly documented switches for the Rift runtime.

The position reported in Unity is most likely derived as the position of the camera (that's always the "zero") + offset given by the height and calibrated rest position which you set up in the Oculus sw when putting the HMD on for the first time. The rest is relative to that.

If you want to control this (except for the head/neck model), the simplest way to avoid problems is to include your own calibration routine in your application and derive your own coordinate system (matrix) that you use to offset whatever the Oculus reports.


Regards,

Jan
 

Sebastien Chevriau

unread,
Sep 29, 2016, 11:16:57 AM9/29/16
to vr-geeks
Hi,

Ok no I was talking about the positional tracking made by the camera.
In a scene, this virtual tracker point (the real camera) is fixed and the virtual head is moving.
But the position of this virtual tracking camera is automatically set by the library.
So I am wondering if we can control how this tracking camera is positioned in the scene.

For example how can I set I have put the camera onto my screen at 133cm or onto a tripod at 170cm ?
or perhaps is this camera made to be set at a special height in the reality ?

Sorry for misunderstanding.

Regards,

Sébastien Chevriau
Research Engineer in Virtual Reality
Team ERgonomie et COnception des Systèmes (ERCOS)
Institut de Recherche sur les Transports, l'Energie et la Société (IRTES, E.A.n°7274)
-------------------------------------------------------------------------------------
Université de Technologie de Belfort-Montbéliard
90010 Belfort cedex - France
Phone: +33 (0) 3 84 58 37 42 - sebastien...@utbm.fr
Campus of Montbéliard - Office M310
-------------------------------------------------------------------------------------
Find all informations and news about UTBM on our website : www.utbm.fr
on twitter @utbm_fr and on http://www.facebook.com/myUTBM
New website of ERCOS team (in french) : http://ercos.utbm.fr

----- Le 29 Sep 16, à 15:56, Jan Ciger <jan....@gmail.com> a écrit :

--
You received this message because you are subscribed to the Google Groups "VR Geeks" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vr-geeks+u...@googlegroups.com.
Visit this group at https://groups.google.com/group/vr-geeks.
For more options, visit https://groups.google.com/d/optout.

Jan Ciger

unread,
Sep 29, 2016, 11:30:45 AM9/29/16
to vr-g...@googlegroups.com
On Thu, Sep 29, 2016 at 5:16 PM, Sebastien Chevriau <sebastien...@utbm.fr> wrote:
Hi,

Ok no I was talking about the positional tracking made by the camera.
In a scene, this virtual tracker point (the real camera) is fixed and the virtual head is moving.
But the position of this virtual tracking camera is automatically set by the library.
So I am wondering if we can control how this tracking camera is positioned in the scene.

For example how can I set I have put the camera onto my screen at 133cm or onto a tripod at 170cm ?
or perhaps is this camera made to be set at a special height in the reality ?


Ah ok, I see now. No idea about this. You may have to dig/ask in the Oculus forums, perhaps someone knows there.

J.

Joachim

unread,
Sep 30, 2016, 4:16:42 AM9/30/16
to VR Geeks
I am not entirely sure from your description what you want to do but here is how you ensure that you measure correct eye height above ground with the Oculus headset independent of where you position the Oculus camera:

1. Create empty game object ("HeadNode") and position it at desired start height (for example the eye height of the Oculus headset when you put it on the floor or tripod)
2. Use the Oculus Unity utilities and parent the OVRCameraController under the HeadNode
3. Run your app
4. Put the headset at defined position and reset Oculus tracking pose with key/joypad.
5. Remove headset and start using it
6. ...
7. Profit!

How you do 4. really depends on what Oculus runtime/utilities and Unity version you are using. 
You didn't include this information so you have to see for yourself here. 
For latest Unity 5.4 this [1] might do the trick for you.

Happy tracking,
Joachim

Reply all
Reply to author
Forward
0 new messages