cancel
Showing results for 
Search instead for 
Did you mean: 

FPV / RemoteEyes

Spacefish
Honored Guest
I think the Ocolus Rift is very nice for FPV RC Plane flying.
A camera is mounted on an RC plane and the video is transmitted to a base station, where someone wears video googles and sees the image: http://www.youtube.com/watch?v=n5pazsq3Qto
As we know the Ocolus Rift needs special deformations / duplication of the image.. So i tried to code a small OpenGL application that allows someon to use a capture Device as the source of the application..
I did it by streaming a captured video to an OpenGL texture, which is mapped on a plane, which in turn is processed by a shader that does the barel transformation / duplicated the image.

Would be nice if someone who has already received the ocolus rift (mine will arrive in 1-2 month i think) could check it out. I have attached the application to this post!
19 REPLIES 19

Spacefish
Honored Guest
Fullscreen can be activated by pressing "f" you can leave the application with ESC

errantspark
Honored Guest
We (roomate, brother and I) just got our Oculus Rift yesterday and we're in the process of building the frames (we have all other parts) for two FPV tri-copters. Our plan is to use GPS+gyro+magnetometer+accelerometer autopilots (I forget the specific model) to fly them synchronously and generate wide separation video so that you feel like a giant. I tried testing out your app but it gives a MSVCP100D.dll is missing error. : (

Spacefish
Honored Guest
Oh i did a debug build and you don´t have VS2010 installed (obviously). I rebuild the programm with everything statically linked and attached it to this post.

maybe you will need the 2010 VS redistributable for this to work, but in most cases it is already installed ( http://www.microsoft.com/de-de/download/details.aspx?id=5555 ).

I also thought about mounting 2 cameras on a rc model to get stereoscopic vision. I see two problems there.

1.: You will need 2 Video Downlinks, so you need to use 2 transmitters if you use standard ATV or you have to use another technique to transfer the videofeed.

2.: The paralax on a quadcopter / tricopter may not be big enough.
look at this:

it was used to view the landscape stereoscopically. I think the paralax is around 1 meter! Maybe someone could mount the 2 cameras on the wings of an airplane?

Spacefish
Honored Guest
B.t..w i noticed that my barell transformation is pretty bad..
It distorts the image way to much in the center... But i don´t know those values to scale it right..
This is my first dive into Shaders, so my code looks pretty pretty bad. I know that the barrel distortion is done by this function in the SDK Example:

float2 rvector= theta * (HmdWarpParam.x + HmdWarpParam.y * rSq +
HmdWarpParam.z * rSq * rSq +
HmdWarpParam.w * rSq * rSq * rSq);


But HmdWarpParam (vec4) is received from the SDK, which i can´t really use, because i does not find a rift (ok thats because i don´t have one) 😄

Would be nice if someone could tell me the 4 float values of HmdWarpParam for the current Rift Headset.
They should be located in the HMDInfo structure which contains an array DistorionK[].

cybereality
Grand Champion
Here are the values for the Rift.

uniform float4 HmdWarpParam = {1.0f, 0.22f, 0.24f, 0.0f};
AMD Ryzen 7 1800X | MSI X370 Titanium | G.Skill 16GB DDR4 3200 | EVGA SuperNOVA 1000 | Corsair Hydro H110i Gigabyte RX Vega 64 x2 | Samsung 960 Evo M.2 500GB | Seagate FireCuda SSHD 2TB | Phanteks ENTHOO EVOLV

errantspark
Honored Guest
So we'll be using two separate tri-copters to have very wide separation to play around with the feeling of size in the world.

Spacefish
Honored Guest
"cybereality" wrote:
Here are the values for the Rift.

uniform float4 HmdWarpParam = {1.0f, 0.22f, 0.24f, 0.0f};


Thank you!

Spacefish
Honored Guest
"errantspark" wrote:
So we'll be using two separate tri-copters to have very wide separation to play around with the feeling of size in the world.


Wow this will be complicated i think. Because they have to fly extremly synchron. If one drifts / the cam changes angle it is a very very wierd effect in 3d / stereo.
But nice project 😄 i think the rift will be a killer for most Fat Sharks and so on.

Spacefish
Honored Guest
Ok it looks a lot better now. I don´t have positioning for the two images in place, but it should work. See the attached file for the latest version!

Would be nice if someone with a rift could check it out!