gusmanb / PSVRFramework

GNU Affero General Public License v3.0
195 stars 37 forks source link

HMD recognition and vr mode sensors #3

Open yanvv opened 7 years ago

yanvv commented 7 years ago

First of all hi absolutely fantastic work I'm already fooling around with this and it is so exciting to see people making this much work already :D

I was wondering if in this version of your project you can look around in vr mode or not (perhaps in 360 videos) or is it just a still image for now? Second I was wondering if there is already a way to have games like elite dangerous or even just steam vr recognize the ps vr as an hmd

mungewell commented 7 years ago

I would agree, having a simple way for the util to 'communicate' head orientation to apps would be cool. Someone had a 'hack with DS4 controller' described here (https://www.youtube.com/watch?v=Ae6vQ0kwUcg), in theory this util could do a similar thing.

You would want to compute the orientation correctly by 'fusing' the accel/gyro data together, maybe this library would help (https://github.com/richardstechnotes/RTIMULib2). As others have noted, you can not positionaly track without a camera to correct drift/yaw, but nulling the position each compute cycle will give good orientation. Simon

gusmanb commented 7 years ago

Well, the toolbox is already broadcasting all the sensor data, it's being broadcasted as UDP in json format, just go to the configuration and enable the broadcaster, in this way you can set any program to listen for it and use the sensor data to retrieve head position and orientation.

I'm already using it on my 3D player and it works, there's a lot of drift, but the data is correct.

I will implement a Fusion algorithm to get something stable and when I get it running there will be also another broadcaster for the opentrack protocol, it's on the queue, but for now I'm totally centered on having a decent 3D player and implement as many commands for the headset. For now the player I have serves as a proof of concept, but it's based on my opengl game engine and it has a ton of useless code and it's slow, it's programmed in C# and it's not the best for optimal performance, so I'm rewriting the player from scratch in managed c++ and pure c to get the full horsepower.

m-7761 commented 6 years ago

Well, the toolbox is already broadcasting all the sensor data, it's being broadcasted as UDP in json format,

I think this is not working on Windows... or the data is bad ( https://github.com/gusmanb/PSVRFramework/issues/64 )