Deskope is an application which allows you to work in Windows with the Rift. The only requirement is that the Rift be in extended desktop mode. It works on any Windows from XP to 8.
The control panel has changed a bit since I made this video but it should get you going.
Most settings are written to the registry automatically but some can be changed manually at: HKEY_CURRENT_USER\Software\Deskope
I look forward to your feedback. If you used Deskope before v1.1 (it had an MFC icon instead of the one of the Rift), please delete the entire Deskope registry key (HKEY_CURRENT_USER\Software\Deskope) to make sure v1.1 runs correctly.
Download: http://sourceforge.net/projects/deskope
Known Issues:
- On Vista/7 you may see 1 1/2 mouse cursors (twice in one eye, once in the other). You can mostly avoid this by using extended displays instead of cloned.
Although I think it needs tweaking in my application as I haven't seen the performance improvement I was expecting.
I love the new features you added since I last played with this. I will check out the source code soon. I am interested in your implementation of PTZ Tweening.
The speedup for PTZ Tweening is greatly dependent on the capture rate for reading from your video card (the "rendering" part of your app, as referred to in my in my PTZ Tweening thread). You may have a card that is fast enough for this to not make a big difference. It should make a very significant difference for some older or value-priced video cards, and especially for CPU-intensive and/or memory intensive rendering. As mentioned in a recent post in my thread, I recently discovered that this method has been used by others for quite some time, masquerading under other names and using other terminology.
Redefined terminology is another reason why patents should never apply to software.
a) incorporate head tilt and roll to keep image stabilized horizontal.
b) when viewing sbs footage, find a way to remove the two ghost playbacks to the left and right of the 3d-content.. a bit jarring to see left eye or right eye only content on screen.
c) allow for more zooming-in on sbs content.
a) incorporate head tilt and roll to keep image stabilized horizontal.
b) when viewing sbs footage, find a way to remove the two ghost playbacks to the left and right of the 3d-content.. a bit jarring to see left eye or right eye only content on screen.
c) allow for more zooming-in on sbs content.
bad ass program.
AG
This program is DESIGNED to NOT cause pixel distortion (other than simple resizing). It uses blits (rectangular area copies) from the Desktop to the Rift display. It would be possible to do rotation (roll) by using a custom blitter, but that would operate a lot slower (unless done in GLSL) and would make the text a lot more blurry, defeating the main purpose of this program.
The source code is available, if you with to inspect how and why it does what it does.
That said, when used to view 3D movie content, head roll would be a nice (optional) feature, but may also require additional processing power (CPU and/or GPU).
This program is DESIGNED to NOT cause pixel distortion (other than simple resizing). It uses blits (rectangular area copies) from the Desktop to the Rift display. It would be possible to do rotation (roll) by using a custom blitter, but that would operate a lot slower (unless done in GLSL) and would make the text a lot more blurry, defeating the main purpose of this program.
Yeah, I definitely caught the drift that you'd be playing with fire in terms of straight static frame legibility if a rotation transform was introduced..
But frankly after spending a week with this early low-res rift, it seems perceived resolution is really based on how much you move your head while staying focused on your point of interest.. The detail perceived ends up being related to the rough sum average of pixels switched on/off over time to represent the area of interest. Especially with so few dedicated pixels per eye..
So by that token, even if the individual frames take a fidelity hit- your ability to comfortably pixel collect improves with a stable horizon.. So I couldn't say for certain which would ultimately look better or be more usable.
b) when viewing sbs footage, find a way to remove the two ghost playbacks to the left and right of the 3d-content.. a bit jarring to see left eye or right eye only content on screen.
c) allow for more zooming-in on sbs content.
b) I agree completely. I just haven't thought of a clever solution yet.
c) You can change the ranges of the sliders in the registry. The key you'd want to change is called "Zoom Maximum".
Fantastic! Had me genuinely laughing at the size of everything Another one of those programs that makes you want a higher res screen, though it's still surprisingly usable on the current one.
@Geekmaster - good tip about the on-screen keyboard. I hadn't even thought of that (I've never had the need to use it before).
Fantastic! Had me genuinely laughing at the size of everything Another one of those programs that makes you want a higher res screen, though it's still surprisingly usable on the current one.
Thanks! Yeah, this will be nicer when the Rift has a higher res screen.
Just made some quick fixes for hotkeys in 8 and it should work in XP now. Newest version is in the OP.
Don't have my Rift yet, but I'm definitely going to try this out when I get it.
Suggestion: come up with a version numbering scheme, and put it in each new Deskope .zip filename, so when there is a new version, it is more obvious to users.
Is there any possibility of getting this to work without the extended desktop requirement? I use an HDMI splitter and have the same thing show up on both my single monitor and on my Rift.
Suggestion: come up with a version numbering scheme, and put it in each new Deskope .zip filename, so when there is a new version, it is more obvious to users.
Is there any possibility of getting this to work without the extended desktop requirement? I use an HDMI splitter and have the same thing show up on both my single monitor and on my Rift.
Unfortunately, no. But you might be able to use this by setting up virtual displays with something like zonescreen. http://zoneos.com/zonescreen.htm
This works great for playing non-VR games inside the Rift. Most games will work if you run them in a window (full screen doesn't work) and set the zoom so the game takes up the Rift's FOV (I set the window size to a few notches below my monitor's native res). Just make sure you disable Deskope's tracking if you want to use the game's tracking.
I recommend trying it with Arma III because you can use Opentrack, which creates flawless headtracking in the game. I also found the ingame text to be perfectly readable.
Great program, by the way! So early on and already so perfect.
This is my favorite solution for playing non supported games in VR. I can't get Vireio to work, lol. This is so simple and worked immediately! My only suggestion so far is to increase the range of the zoom slider (registry edit for now ). Oh, and I didn't know how my IPD in mm would translate to pixels for image separation, so that setting confused me. Thanks, and keep the updates coming !
Oh, and I didn't know how my IPD in mm would translate to pixels for image separation, so that setting confused me
I've been meaning to put in the separation in mm too but just never got around to it. As it is I was hoping people could just adjust it until it felt comfortable.
I've been meaning to put in the separation in mm too but just never got around to it. As it is I was hoping people could just adjust it until it felt comfortable.
Yeah, that worked fine for me for now . Only problem is, most of the ranges look okay, so probably it is causing eye strain. What's the base pixel to IPD measurement? My IPD is 57, which isn't far off from the most common default of 60-65 iirc.
One feature I thought of I'd like - a mode where it still lets you adjust the zoom but doesn't track anything (mouse or head tracker in oculus) so that it jsut centers on a full screen app, regardless of mouseor rift tracker input. I could use this for one game in particular.
Looking forward to updates ^_^!! Thanks again for sharing!
What's the base pixel to IPD measurement? My IPD is 57, which isn't far off from the most common default of 60-65 iirc.
I haven't put mm measurements in Deskope because I'm kind of confused about this. From the dimensions of the Rift you'd think it's ~8.5 px / mm, but from the numbers in the calibration tool in TF2 I'm getting ~7.4 px / mm.
If I use 8.5 to calculate the IPD adjustment I can barely focus on it, but the number from TF2 gives comfortable results. So for your IPD I'd set the separation to 217 px (640 - 57 * 7.42).
One feature I thought of I'd like - a mode where it still lets you adjust the zoom but doesn't track anything (mouse or head tracker in oculus) so that it jsut centers on a full screen app, regardless of mouseor rift tracker input. I could use this for one game in particular.
I didn't think people could even play games with Deskope, so this type of thing didn't occur to me. The frame rate is going to be much better in the next version, so I'm thinking about implementing something like this.
This is definitely a rather interesting program! I went through and figured I'd try something odd; I tried zooming in all the way, firing up Minecraft, and turning off lock cursor, The result was a full peripheral view of minecraft, and it really felt real. It's like there was a layer on top of the headtracking, very interesting experience; Not even sure if my IPD was right, but it felt great.
I think I can work it into a standard game control scheme, but this definitely gives me a lot of promise!
Looking forward to a virtual desktop integrated into the next OS for PCs, combined with LeapMotion, this will be nuts.
My rift seems to drift to the right a bit, it would be nice to include mag tracking in the next version to see if we can keep the giant awesome screen from moving.
THIS is AWESOME!!!!!!!!! one of the coolest apps for the Rift yet. It has some issues, framerate issues (though maybe due to my setup not doing vsync and so theres some lag) but it works really well! and even cooler is that you can use it with games! not perfectly it seems to me if theres a ton of action it may be laggy but...i tried it out with world of warcraft with the screen looking like it wraps around a little and head tracking you do feel a bit like you are there...its not perfect and surely vorpx will be better but its a cool preview work around for now......works great with videos! (porn haha) and i even tried it with Second Life, whats nice is with the head tracking you can easily type and then move things around! very nice and the head tracking is cool because if you set it to have a very large view you can fake yourself into thinking you have full head tracking in the game or video when you dont so thats kinda cool because in a game or what you can kinda "look" around a little awesome stuff! i got this to work i could not get the other thing to work (oculus overlay) so this will be a nice feature till something else comesalong, have not tried to the 3d mode yet that might be interesting. keep it up!
one thing, can you please add drift correction in the next update seems when i move things get drifted off center after a while. thank you!
Yeah, that worked fine for me for now . Only problem is, most of the ranges look okay, so probably it is causing eye strain. What's the base pixel to IPD measurement? My IPD is 57, which isn't far off from the most common default of 60-65 iirc.
Actually IPD of 57 is quite rare, according to wiki (wikipedia.org/wiki/Interpupillary_distance) you're in the 1th-5th % of the population. In TF2 you will get your IPD in both mm and pixels ...
I've been meaning to put in the separation in mm too but just never got around to it. As it is I was hoping people could just adjust it until it felt comfortable.
Most people will feel comfortable with almost anything... while they can't see the difference themselves, wrong IPD settings might contribute to an increased eye strain after a while.
As for the application, I guess I waited for something like that right from the start only didn't know it My computer screen supports 1440 x 900 res so if I want to fire up unity demos in 1080p I have to switch off the screen and fight with chopped display on the rift, one eye at a time. Well... not any more Hotkeyed deskope so that it can always save me from confusion, now you don't have to take your rift off at all :twisted:
Can you start Deskope to use Windows normally and launch Rift games from it without any problems?
What's a dirty skimmer? The version you can download now works alright with other Rift games. This will be much improved in the next version though.
Anyway, I'm pretty excited about the next version. The frame rate is so good that it makes Deskope much more multi-purpose. The attached images show the Deskope frame rate staying at a steady 60fps while a rift game runs at 122fps and a youtube video runs at 35fps (I believe youtube usually plays at 30fps).
There's a handful of other improvements too. Stay tuned, I just need to fine tune some things and make myself stop adding features.
The version you can download now works alright with other Rift games. This will be much improved in the next version though.
Anyway, I'm pretty excited about the next version. The frame rate is so good that it makes Deskope much more multi-purpose. The attached images show the Deskope frame rate staying at a steady 60fps while a rift game runs at 122fps and a youtube video runs at 35fps (I believe youtube usually plays at 30fps).
There's a handful of other improvements too. Stay tuned, I just need to fine tune some things and make myself stop adding features.
Comments
Although I think it needs tweaking in my application as I haven't seen the performance improvement I was expecting.
The speedup for PTZ Tweening is greatly dependent on the capture rate for reading from your video card (the "rendering" part of your app, as referred to in my in my PTZ Tweening thread). You may have a card that is fast enough for this to not make a big difference. It should make a very significant difference for some older or value-priced video cards, and especially for CPU-intensive and/or memory intensive rendering. As mentioned in a recent post in my thread, I recently discovered that this method has been used by others for quite some time, masquerading under other names and using other terminology.
Redefined terminology is another reason why patents should never apply to software.
setting the zoom to .8 and i can almost use this as a monitor replacement! restricting the mouse cursor is brilliant as well.
i'm curious why the roll isn't supported? the windows/view rolls with my head instead of keeping the screen "fixed."
Wowowowow.
Nice work!
Feedback:
a) incorporate head tilt and roll to keep image stabilized horizontal.
b) when viewing sbs footage, find a way to remove the two ghost playbacks to the left and right of the 3d-content.. a bit jarring to see left eye or right eye only content on screen.
c) allow for more zooming-in on sbs content.
bad ass program.
AG
The source code is available, if you with to inspect how and why it does what it does.
That said, when used to view 3D movie content, head roll would be a nice (optional) feature, but may also require additional processing power (CPU and/or GPU).
Yeah, I definitely caught the drift that you'd be playing with fire in terms of straight static frame legibility if a rotation transform was introduced..
But frankly after spending a week with this early low-res rift, it seems perceived resolution is really based on how much you move your head while staying focused on your point of interest.. The detail perceived ends up being related to the rough sum average of pixels switched on/off over time to represent the area of interest. Especially with so few dedicated pixels per eye..
So by that token, even if the individual frames take a fidelity hit- your ability to comfortably pixel collect improves with a stable horizon.. So I couldn't say for certain which would ultimately look better or be more usable.
AG
I'll make the roll tracking/rotation thing a priority. geekmaster knows this program well, his explanation about that is dead on.
b) I agree completely. I just haven't thought of a clever solution yet.
c) You can change the ranges of the sliders in the registry. The key you'd want to change is called "Zoom Maximum".
Yeah the roll-tracking addition would be out of this world..
Thanks for the registry heads-up! Can't wait to try when I get back to the studio.
best,
AG
http://www.dummies.com/how-to/content/how-to-use-the-onscreen-keyboard-in-windows-7.html
@Geekmaster - good tip about the on-screen keyboard. I hadn't even thought of that (I've never had the need to use it before).
Just made some quick fixes for hotkeys in 8 and it should work in XP now. Newest version is in the OP.
Suggestion: come up with a version numbering scheme, and put it in each new Deskope .zip filename, so when there is a new version, it is more obvious to users.
Unfortunately, no. But you might be able to use this by setting up virtual displays with something like zonescreen. http://zoneos.com/zonescreen.htm
I recommend trying it with Arma III because you can use Opentrack, which creates flawless headtracking in the game. I also found the ingame text to be perfectly readable.
Great program, by the way! So early on and already so perfect.
This actually isn't as new as it might seem. I originally made a very rough version of this years ago to use with my Vuzix HMD.
I've been meaning to put in the separation in mm too but just never got around to it. As it is I was hoping people could just adjust it until it felt comfortable.
Yeah, that worked fine for me for now
One feature I thought of I'd like - a mode where it still lets you adjust the zoom but doesn't track anything (mouse or head tracker in oculus) so that it jsut centers on a full screen app, regardless of mouseor rift tracker input. I could use this for one game in particular.
Looking forward to updates ^_^!! Thanks again for sharing!
If I use 8.5 to calculate the IPD adjustment I can barely focus on it, but the number from TF2 gives comfortable results. So for your IPD I'd set the separation to 217 px (640 - 57 * 7.42).
I didn't think people could even play games with Deskope, so this type of thing didn't occur to me. The frame rate is going to be much better in the next version, so I'm thinking about implementing something like this.
I think I can work it into a standard game control scheme, but this definitely gives me a lot of promise!
Looking forward to a virtual desktop integrated into the next OS for PCs, combined with LeapMotion, this will be nuts.
This is freaking awesome.
one thing, can you please add drift correction in the next update seems when i move things get drifted off center after a while. thank you!
Actually IPD of 57 is quite rare, according to wiki (wikipedia.org/wiki/Interpupillary_distance) you're in the 1th-5th % of the population. In TF2 you will get your IPD in both mm and pixels ...
Most people will feel comfortable with almost anything... while they can't see the difference themselves, wrong IPD settings might contribute to an increased eye strain after a while.
As for the application, I guess I waited for something like that right from the start only didn't know it
How does it behave with other Rift games?
Can you start Deskope to use Windows normally and launch Rift games from it without any problems?
Anyway, I'm pretty excited about the next version. The frame rate is so good that it makes Deskope much more multi-purpose. The attached images show the Deskope frame rate staying at a steady 60fps while a rift game runs at 122fps and a youtube video runs at 35fps (I believe youtube usually plays at 30fps).
There's a handful of other improvements too. Stay tuned, I just need to fine tune some things and make myself stop adding features.
My favorite kind of developer!
I had a chance to try this out finally, with an extended desktop setup. It's great!
Sounds great! Looking forward to it!