Tricks to acheive high framerate
So it's a known problem already that 60 fps is way too low, this alone causes serious problems with perception such as smearing and strobing (and judder in between of them), and solving one of them only ramps up severity of another one, so really the solution here is to get physically higher update rate, above 300 fps preferably.
But there's more problems here:
First off, there's no display on the market with this high update rate yet. But this is acheivable, with enough development money.
The second problem is GPU powers, if we want to render a Rift stereo scene in 300 fps we need to cut down the graphics severely, to something like year 2003 level. This is acceptable, of course, but in 2013 we're expecting there to be modern graphics, really. We can't just expect everyone to stock up on 4x Titans.
And the biggest problem is bandwidth - FullHD 120 fps already takes about 8 Gbps throughput (correct me if I'm wrong). Getting that much higher bandwidth requires developing a whole new hardware standards. But of course getting GPU manufacturers to develop VR-enabled GPUs standart is the way to go, so that we'd have VR GPUs on the market that use special ultra-bandwidth cables, allow for extreme framerates, preferably with option to use tricks (such as explained below) to get high FPS with reasonably good picture in expense of slight amount of artifacts, and with option to choose between low FPS and rich graphics for i.e. slow paced adventure games, and extreme FPS and poorer graphics where FPS is #1 major priority such as racing simulation games. Of course an option for SLI-stacking them is pretty much mandatory, too. But obviously this doesn't happen until Rift gets massive adoption, I expect GPU manufacturers to come into motion with this when Rift sells several tens of millions units worldwide.
But having it in high framerate is really that crucial though. What I think of is using tricks. Particularry, using current GPUs and cables, we can render the scene at 60 fps, and generate 4 bit pixel displacement map at the same time, and send them to the Rift one after another at 120 fps. Internally, the Rift will interpolate the image using displacement map 4 times between frames (to even benefit from displacement map as opposed to plain 120 fps rendering), so every 4 physical frames there's graphics syncing and therefore it shouldn't yield much artifacts, at least that's what John Carmack implies in his article about acheiving low latency. I see the time plot as following:
So this way we're getting 240 physical fps at only 60 GPU fps. Of course that makes for 7 ms lag, but I think that applying Carmack's techniques can solve this as well. If we're only to use two-byte displacement map, we can send two displacement maps between frames generated in meantime on GPU, which yields better precision or could make up for higher physical update rate.
What do you guys think of it?
But there's more problems here:
First off, there's no display on the market with this high update rate yet. But this is acheivable, with enough development money.
The second problem is GPU powers, if we want to render a Rift stereo scene in 300 fps we need to cut down the graphics severely, to something like year 2003 level. This is acceptable, of course, but in 2013 we're expecting there to be modern graphics, really. We can't just expect everyone to stock up on 4x Titans.
And the biggest problem is bandwidth - FullHD 120 fps already takes about 8 Gbps throughput (correct me if I'm wrong). Getting that much higher bandwidth requires developing a whole new hardware standards. But of course getting GPU manufacturers to develop VR-enabled GPUs standart is the way to go, so that we'd have VR GPUs on the market that use special ultra-bandwidth cables, allow for extreme framerates, preferably with option to use tricks (such as explained below) to get high FPS with reasonably good picture in expense of slight amount of artifacts, and with option to choose between low FPS and rich graphics for i.e. slow paced adventure games, and extreme FPS and poorer graphics where FPS is #1 major priority such as racing simulation games. Of course an option for SLI-stacking them is pretty much mandatory, too. But obviously this doesn't happen until Rift gets massive adoption, I expect GPU manufacturers to come into motion with this when Rift sells several tens of millions units worldwide.
But having it in high framerate is really that crucial though. What I think of is using tricks. Particularry, using current GPUs and cables, we can render the scene at 60 fps, and generate 4 bit pixel displacement map at the same time, and send them to the Rift one after another at 120 fps. Internally, the Rift will interpolate the image using displacement map 4 times between frames (to even benefit from displacement map as opposed to plain 120 fps rendering), so every 4 physical frames there's graphics syncing and therefore it shouldn't yield much artifacts, at least that's what John Carmack implies in his article about acheiving low latency. I see the time plot as following:
|graphics scanout |displacement scanout|
|old+int2|old+int3|new |new+int1 |
So this way we're getting 240 physical fps at only 60 GPU fps. Of course that makes for 7 ms lag, but I think that applying Carmack's techniques can solve this as well. If we're only to use two-byte displacement map, we can send two displacement maps between frames generated in meantime on GPU, which yields better precision or could make up for higher physical update rate.
What do you guys think of it?
