Cyber's DIY Stereo Driver [Work Log]
- cybereality
- 3D Angel Eyes (Moderator)
- Posts: 11407
- Joined: Sat Apr 12, 2008 8:18 pm
Re: Cyber's DIY Stereo Driver [Work Log]
Yes, the main issue I have with that idea is that rotating the camera horizontally and merely shifting the image horizontally (ie in a shader) is not the same thing. Then on the next frame when you actually do look to the side, do you shift the image back to where it should be? Just seems like it would introduce flickering in the render which may be worse than the lag it aims to reduce.
- android78
- Certif-Eyable!
- Posts: 990
- Joined: Sat Dec 22, 2007 3:38 am
Re: Cyber's DIY Stereo Driver [Work Log]
I think you may be missing my point.
When the render of an image begins, you will be looking in a certain direction, and this direction is what the renderer will use to create the image. By the time the render has completed, you wil ACTUALLY be looking not quite the same direction as when it started. So I'm thinking that you could then shift the rendered image either left or right, to compensate for the difference.
For instance, if you are turning right, and the start of the render, you are looking due North. Then by the end of the render, you have turned 1 degree East of North. In this case, you would post-render the image offset to the left a few pixels. If you continue turning at the same speed, the next image would begin to be rendered looking 1degree to the East of North, and by the time it finishes, you would again move it a few pixels to the left:
Start of render1 direction = 0 degrees
End of render1 direction = 1 degrees
Shift the final rendered image to the left 5 pixels (difference of 1 degree times scaling factor of 5 pixels per degree as an example).
Start of render2 direction = 1 degrees
End of render2 direction = 2 degrees
Shift the final rendered image to the left 5 pixels (again, difference of 1 degree times scaling factor of 5 pixels per degree as an example).
If you were to slow down rotation:
Start of render1 direction = 0 degrees
End of render1 direction = 1 degrees
Shift the final rendered image to the left 5 pixels (difference of 1 degree times scaling factor of 5 pixels per degree as an example).
Start of render2 direction = 1 degrees
End of render2 direction = 1 degrees
No shift of the rendered image (again, difference of 0 degree times scaling factor of 5 pixels per degree as an example)
Note that the 5 pixels per degree is just for example, and you would have to play with this scaling factor for best results.
I think it would be worth investigating.
When the render of an image begins, you will be looking in a certain direction, and this direction is what the renderer will use to create the image. By the time the render has completed, you wil ACTUALLY be looking not quite the same direction as when it started. So I'm thinking that you could then shift the rendered image either left or right, to compensate for the difference.
For instance, if you are turning right, and the start of the render, you are looking due North. Then by the end of the render, you have turned 1 degree East of North. In this case, you would post-render the image offset to the left a few pixels. If you continue turning at the same speed, the next image would begin to be rendered looking 1degree to the East of North, and by the time it finishes, you would again move it a few pixels to the left:
Start of render1 direction = 0 degrees
End of render1 direction = 1 degrees
Shift the final rendered image to the left 5 pixels (difference of 1 degree times scaling factor of 5 pixels per degree as an example).
Start of render2 direction = 1 degrees
End of render2 direction = 2 degrees
Shift the final rendered image to the left 5 pixels (again, difference of 1 degree times scaling factor of 5 pixels per degree as an example).
If you were to slow down rotation:
Start of render1 direction = 0 degrees
End of render1 direction = 1 degrees
Shift the final rendered image to the left 5 pixels (difference of 1 degree times scaling factor of 5 pixels per degree as an example).
Start of render2 direction = 1 degrees
End of render2 direction = 1 degrees
No shift of the rendered image (again, difference of 0 degree times scaling factor of 5 pixels per degree as an example)
Note that the 5 pixels per degree is just for example, and you would have to play with this scaling factor for best results.
I think it would be worth investigating.
-
- Golden Eyed Wiseman! (or woman!)
- Posts: 1498
- Joined: Fri Jul 08, 2011 11:47 pm
Re: Cyber's DIY Stereo Driver [Work Log]
I dont quite get it. So, you mean, move the display screen image a few pixels to simulate head turning? wouldn't that expose blank pixels on the edge of the screen, unless you rendered to a bigger screen than you are outputting on?
- android78
- Certif-Eyable!
- Posts: 990
- Joined: Sat Dec 22, 2007 3:38 am
Re: Cyber's DIY Stereo Driver [Work Log]
The Driver is already stretching edge pixels when it adjusts for the distortion in the Rift.WiredEarp wrote:I dont quite get it. So, you mean, move the display screen image a few pixels to simulate head turning? wouldn't that expose blank pixels on the edge of the screen, unless you rendered to a bigger screen than you are outputting on?
-
- One Eyed Hopeful
- Posts: 48
- Joined: Mon Dec 12, 2011 5:44 pm
Re: Cyber's DIY Stereo Driver [Work Log]
The difference is that in that video Cyber is emulating mouselook to look around, which you can only do when not moving the aircraft in some axes, and when holding a button. You could do the same in BF2, but BF2FreeLook gives full 6DOF tracking without having to press a button to free look and allowing you to still fully maneuver the aircraft whilst looking/moving around. With FreePIE reading sensor data and providing BF2FreeLook with Freetrack data, we have full 6DOF headtracking (if I'm right in that FreePIE does that), all that needs doing is the 3D, FOV and warping stuff.android78 wrote:BF2? How about BF3: http://www.youtube.com/watch?v=-4-BIr74Jv4
-
- Golden Eyed Wiseman! (or woman!)
- Posts: 1498
- Joined: Fri Jul 08, 2011 11:47 pm
Re: Cyber's DIY Stereo Driver [Work Log]
I've heard you can actually control the plane while looking in BF3 etc by using keyboard to control it. Can anyone confirm this? If so, it might be possible to make a xPIE type script that would convert your joystick controls to key presses while in the process of looking around, so you could still control the plane while looking in BF3?
-
- Cross Eyed!
- Posts: 196
- Joined: Mon May 07, 2007 2:05 pm
- Location: between dimensions
Re: Cyber's DIY Stereo Driver [Work Log]
Guys, anyone see this - http://www.wizdish.com/venturefest/
It looks silly, but if it works it will essentially solve a lot of VR issues.
It looks silly, but if it works it will essentially solve a lot of VR issues.
- android78
- Certif-Eyable!
- Posts: 990
- Joined: Sat Dec 22, 2007 3:38 am
Re: Cyber's DIY Stereo Driver [Work Log]
You may have missed this thread dedicated to that:artox wrote:Guys, anyone see this - http://www.wizdish.com/venturefest/
It looks silly, but if it works it will essentially solve a lot of VR issues.
http://www.mtbs3d.com/phpBB/viewtopic.php?f=120&t=14409
-
- Cross Eyed!
- Posts: 196
- Joined: Mon May 07, 2007 2:05 pm
- Location: between dimensions
Re: Cyber's DIY Stereo Driver [Work Log]
Knew I had to do a forum search before posting
Thanks
Thanks
- jaybug
- Binocular Vision CONFIRMED!
- Posts: 302
- Joined: Sun Sep 09, 2012 4:55 pm
Re: Cyber's DIY Stereo Driver [Work Log]
The keyboard controls the acceleration and yaw, so you can still control those while in "freelook" mode. But you lose pitch and roll, which are controlled by the mouse (or whatever controls you use).WiredEarp wrote:I've heard you can actually control the plane while looking in BF3 etc by using keyboard to control it. Can anyone confirm this? If so, it might be possible to make a xPIE type script that would convert your joystick controls to key presses while in the process of looking around, so you could still control the plane while looking in BF3?
- Dakor
- Binocular Vision CONFIRMED!
- Posts: 213
- Joined: Sat Nov 03, 2012 8:58 am
- Location: Dortmund, Germany
- Contact:
Re: Cyber's DIY Stereo Driver [Work Log]
hi!
I love your project and already wrote down some words in my blog about it, a while ago. (it's in German language )
After some time of just reading here I decided to ask if you may could try to get Killing Floor working.
It's an mod for UT3, so it could be easy,.. could
It's co-op horror survival with zombies.. maybe you can give it a try, thanks
I love your project and already wrote down some words in my blog about it, a while ago. (it's in German language )
After some time of just reading here I decided to ask if you may could try to get Killing Floor working.
It's an mod for UT3, so it could be easy,.. could
It's co-op horror survival with zombies.. maybe you can give it a try, thanks
German blogger, enthusiast and developer.
- Namielus
- Certif-Eyable!
- Posts: 957
- Joined: Thu Aug 02, 2012 8:49 am
- Location: Norway
- Contact:
Re: Cyber's DIY Stereo Driver [Work Log]
Dakor this thread is no longer active.
It has continued at this thread
http://www.mtbs3d.com/phpBB/viewtopic.php?f=140&t=15570
Correct me if I am wrong anyone
It has continued at this thread
http://www.mtbs3d.com/phpBB/viewtopic.php?f=140&t=15570
Correct me if I am wrong anyone
- cybereality
- 3D Angel Eyes (Moderator)
- Posts: 11407
- Joined: Sat Apr 12, 2008 8:18 pm
Re: Cyber's DIY Stereo Driver [Work Log]
@Dakor: Hey, welcome mate! I can put Killing Floor on the list to add after launch, timing is very tight.
@Namielus: Correct, that is the new thread.
@Namielus: Correct, that is the new thread.