Skip to main content
GameDev.net gamedev.net
🔒 Locked

Oculus Rift and Super Resolution

Started by alan2here Jul 16, 2014 at 11:31 AM 9 replies 5.2k views
Original Post
alan2here
alan2here
I've briefly used a development Oculus Rift with the example game and the Rift mode in Half Life 2.

The game world resolution appeared dramatically higher than the screen resolution of the device, appearing as retina resolution for my eyes and I have particularly good eyesight.

The difference between perception and reality was very clear with the near unreadable pixelation of games menu items when they were fixed in position, representative of the real, low resolution of the screen.

I put this down to super-resolution caused by subtle head movements. Imagine lines from your eyes, through each pixel of the rifts screen, then through virtual space and onto surfaces of the in-game world, with slight head movements these lines move around on objects at sub-pixel scales, giving much more information than a still image, the mind interpreting this as a higher resolution image far beyond what occurs with 3D games viewed on conventional screens at low resolutions, where looking is controlled by movement of a mouse.

I could even see a ghost of the huge chunky pixel grid, faint and easy to ignore over the view.

.

I'm hoping for accounts of this effect on the Rift or similar systems at further reduced resolutions:

Do you experience the effect?

If so:

Can you read (in world) text of a lower resolution than would usually be possible, for example with each character being 3x2 pixels.

At what resolution does the effect no longer work?

If you normally feel nauseous using the Rift, how does noticing this effect contribute to that?

If this works at very low resolutions, do small objects seem to suddenly appear as they are noticed for the first time, as the center of a pixel reaches the in world object, how does your mind make sense of the contradiction?

Do things feel noticeably different than usual?

Anything else of note?
RLS0812
RLS0812

This post is written in a way that makes it hard to figure out the subject ...

Are you saying that the pixel density is too low for Oculus Rift due to how close the screen is to the eyes ?

I cannot remember the books I've read any more than the meals I have eaten; even so, they have made me. ~ Ralph Waldo Emerson
iceman76
iceman76

He's commenting on an effect that he's noticed with the Rift, and wants to know other people's experiences/thoughts on it.

Basically, think of looking through a screen or fence slats- if you're standing still, they block your vision and you can only see part of whats past them. If you're moving, though, they basically disappear, because your mind pieces together what you're seeing to form a complete image of whats behind the fence/screen.

He's noticed a similar effect with the Rift. The game world seems to be at a much higher resolution than it actually is, because the brain is piecing together all the pixelated images (that are slightly different because the head is moving, however subtly) to form a near-perfect, "complete" image of the game world that is at a "super-resolution". However, aspects like UI that are stuck to one point in the screen can't be improved by this effect, so UI text was almost impossible to read.

I don't have a Rift, so I can't comment on whether or not this happens to me. However, if this is generally the case, it does offer a way to improve VR UI. I know people are saying to have stuff like ammo count and health bar as part of the world, but if you did want it as floating UI for whatever reason, it'd be best to still have it fixed (more or less) in world, so that the brain can piece a better image of it together.

HappyCoder
HappyCoder

I never noticed that effect on my rift. I will look for it next time. The only time the low resolution was a problem for me was in half life when I was trying to fire at an enemy that was far away. So perhaps I was experiencing that super resolution effect since the resolution doesn't seem to bother me.

My current game project Platform RPG
ChaosEngine
ChaosEngine

Which rift did you use? I got to try one out the other day, and the resolution was painfully low. The screen door effect was terrible and the latency was way too high.

However, that was the original rift.

Everything I've heard/read says that the DK2 version is a vast improvement on both counts.

if you think programming is like sex, you probably haven't done much of either.-------------- - capn_midnight
jefferytitan
jefferytitan

It seems that you like the screen door effect. ;) The thing it reminds me of is when you walk past a fence. On average you can see only 20% through many fences (e.g. the gaps), but as long as you keep moving your brain stitches those glimpses together and you feel like you can see through the fence.

Crichton333
Crichton333
Those first dev kit Oculus Rifts had way lower resolution than the ones now or planned ones.
"Smoke me a kipper i'll be back for breakfast." -- iOS: Science Fiction Quiz
szecs
szecs

It seems that you like the screen door effect. ;) The thing it reminds me of is when you walk past a fence. On average you can see only 20% through many fences (e.g. the gaps), but as long as you keep moving your brain stitches those glimpses together and you feel like you can see through the fence.

It's simple motion blur and depth of filed blur what you are describing with that fence thing.

cowsarenotevil
cowsarenotevil

It seems that you like the screen door effect. ;) The thing it reminds me of is when you walk past a fence. On average you can see only 20% through many fences (e.g. the gaps), but as long as you keep moving your brain stitches those glimpses together and you feel like you can see through the fence.

It's simple motion blur and depth of filed blur what you are describing with that fence thing.

No it isn't; you're actually getting more information about what's behind the fence if the background is moving relative to the fence. Each pixel in the Oculus (or any screen) is only a single data point, but naturally, if you sample the same pixels repeatedly over time, the pixels from one frame could give you data that falls "between" pixels in another frame. It does seem that the brain is remarkably good at figuring out where in space those pixels belong as well.

I'm actually very surprised that, to my knowledge, no one has used this principle for up-scaling video resolution. Obviously it'd only work in situations where automatic motion tracking be performed, but motion tracking works well enough that it can be used for 3D reconstruction, camera tracking, and stabilization, so my intuition says that it would work for this as well.

I've used the original Oculus development kit, and I've noticed the same thing, but I think with improved latency and frame rates the effect would be much stronger.

-~-The Cow of Darkness-~-
Hodgman
Hodgman

I'm actually very surprised that, to my knowledge, no one has used this principle for up-scaling video resolution

It's used in a lot of video-games. Every frame you shift the screen projection by a fraction of a pixel, which results in edges maybe shifting by a pixel, or not. When combined with MSAA and temporal reprojection, nVidia uses the TXAA buzzword to refer to it wink.png

It's also an old-school way that people used to use to render out "magazine quality" screenshots from game engines. You'd take thousands of sub-pixel shifted screenshots and then average them, which gives you a screenshot that you can say is "in engine", but looks pre-rendered laugh.png

cowsarenotevil
cowsarenotevil

I'm actually very surprised that, to my knowledge, no one has used this principle for up-scaling video resolution

It's used in a lot of video-games. Every frame you shift the screen projection by a fraction of a pixel, which results in edges maybe shifting by a pixel, or not. When combined with MSAA and temporal reprojection, nVidia uses the TXAA buzzword to refer to it wink.png

It's also an old-school way that people used to use to render out "magazine quality" screenshots from game engines. You'd take thousands of sub-pixel shifted screenshots and then average them, which gives you a screenshot that you can say is "in engine", but looks pre-rendered laugh.png

Yeah, that's pretty close to what I'm referring to, but I was imagining using that principle to actually increase the number of pixels (versus just increasing the number of "samples" averaged to form each pixel) by reconstructing the amount of shift after the fact based on only the video data.

-~-The Cow of Darkness-~-

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.