r57zone / OpenVR-OpenTrack

OpenVR driver with OpenTrack support / OpenVR драйвер, с поддержкой OpenTrack

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Freetrack rotation axis

Ko1dun opened this issue · comments

I tried feedin rotation data from Opentrack to SteamVR via OpenVR-OpenTrack and got wrong rotation axis. I.E. pitch makes the view roll etc.
I switched from opentrack to FreePIE and got correct rotations with following code:
freeTrack.yaw = roll; freeTrack.pitch = yaw; freeTrack.roll = -pitch;
where freeTrack is output via freetrack 2.0 and yaw, pitch, roll are aligned as following
dSky-Oculus-XYZ-YPR

I could remap axis with opentrack itself, but it limits freetrack output pitch to +-90 degrees (that is corect for Euler angles) and it results in game yaw being limited to +-90.

En:
Hi, could you check the angles also in FreePie IMU? I had problems with tracking in OpenTrack, 360 tracking did not work, it seems there was some kind of bug (which was noticed by different people, including me).
The FreeTrack implementation is completely taken from OpenTrack.

Ru:
Привет, не могли бы вы проверить углы также в FreePie IMU? У меня возникали проблемы с трекингом в OpenTrack, 360 трекинг не работал, кажется там был какой-то баг (который замечали разные люди, включая меня).
Реализация FreeTrack полностью взята из OpenTrack.

Именно FreePie IMU проверить не могу, т.к. не на чем.
Я пользовался программой FreePIE и её выводом в freetrack. Результат одинаковый и с opentrack и с freePIE. Во всех случаях оси перепутаны, к примеру поворот головы вправо-влево управляется осью Pitch.

Я обновил драйвера, вроде исправил оси, просьба проверить не интвертированы ли они во FreeTrack. В UDP вроде верные, а у FreeTrack там вроде свои особенности.
Проблема с "90 градусами" к сожалению исправить не могу, так как она находится в не драйвера, драйвер поддерживает 360 трекинг без проблем.

Чтобы проверить UDP драйвер можно просто переключить Output в "UDP over network", выставить в настройках трекера адрес 127.0.0.1 и заменить SteamVR драйвер.

Проверил оба варианта. Оси там и там теперь соответствуют. На счёт инверсии вроде правильно, но точно не уверен. Это если что легко исправляется настройками OpenTrack.
Про 90 градусов - сейчас когда оси стоят правильно, проблемы нет. Угол pitch(тангаж) чисто по определению может быть только от -90 до +90.

Хорошие новости, рад что теперь как надо заработало, когда изначально делал калибровал под свой Arduino датчик, а там криво было.

@Ko1dun а при использовании по UDP по оси Pitch нет отличий от FreeTrack или в сравнении с FreeTrack ось инвертирована?