FOVE Unboxing & Somewhat Curtailed Review

Nice one Alec, some more coffee has invaded my keyboard! :)

In all fairness, we are all excited.
I'm glad the Win7 alpha is coming soon. Its still a major OS, but multi-OS support for new hardware gets expensive really quick, so I can see why FOVE went with the newest offering first on release.

From what I've seen so far, FOVE has really outdone both Oculus and Valve on their first HMD offering, especially considering the technical difficulty adding a major new feature.
The lessons learned will help eye-tracking on all platforms in the future - I'm sure it will become routine as it saves so much power and offers much in the way of UI sensitivity.

And as Project Judgement has shown us, gaze tracking opens up new paths for context and attention-sensitive storytelling too. No more skimpy-naughty bits mods in Skyrim - wandering eyes might get your head chopped off!
I can imagine devs having fun with this... they know where you are looking, and by definition, where you are not looking. The horror genre will just get creepier.
 
Last edited:
I'm guessing it has to be written specifically in game, to get the benefits of rendering savings, or does the FOVE do it automatically? It's really hard to google that question and get any meaningful data back.

@Franc Kaos - I'm pretty sure the foveated rendering has to be written into the game as well as the headset driver.

Fove's driver will handle the headset tracking and eye tracking by itself, but its the game that takes that tracking data and turns it into the viewpoint you see rendered in-game.
The game handles the player's position, the resulting visible geometry, and thus the players gaze direction (maximum detail) with expanding rings of lesser and lesser detail away from the gaze direction.

The game will handle cutting down detail in the rendering shaders/etc away from the central area of interest as it is feeding these instructions to the graphics card.

So ED for example would need to map in the gaze direction, feed the gaze direction to the rendering, then the shaders would work out what level of detail to render to, then the GPU renders the image (to simplify it somwhat!).
 
@Franc Kaos - I'm pretty sure the foveated rendering has to be written into the game as well as the headset driver.

Fove's driver will handle the headset tracking and eye tracking by itself, but its the game that takes that tracking data and turns it into the viewpoint you see rendered in-game.
The game handles the player's position, the resulting visible geometry, and thus the players gaze direction (maximum detail) with expanding rings of lesser and lesser detail away from the gaze direction.

The game will handle cutting down detail in the rendering shaders/etc away from the central area of interest as it is feeding these instructions to the graphics card.

So ED for example would need to map in the gaze direction, feed the gaze direction to the rendering, then the shaders would work out what level of detail to render to, then the GPU renders the image (to simplify it somwhat!).

Yup - this was my immediate thought too.

I'll also be really interested to hear what the drop to 70fps means for motion sickness in the SRV. For me at least, getting my fps up from 70 to 90 made all the difference in the world to how the SRV made me feel (i.e from insurmountable nausea to none whatsoever).
 
Im no expert but i do not think that incorperating fovated rendering into the games themselves would be the way to go.

Wouldnt it work better if the game just ran as it normally would and the rendering software for the hmd just "upscaled" where necessary? Or.....if the program that runs the HMD takes control of the gpu and decides what is and is not rendered at higher resolutions?

As i said....im no expert....but....i think fovated rendering is probably the immediate future of VR. But....if we expect every individual game developer to have to code every individual game for it......its never going to work. It seems to me that the solution for something like this needs to come from the HMD/HMD software itself if this is ever going to take off
 
Last edited:
Im no expert but i do not think that incorperating fovated rendering into the games themselves would be the way to go.

Wouldnt it work better if the game just ran as it normally would and the rendering software for the hmd just "upscaled" where necessary? Or.....if the program that runs the HMD takes control of the gpu and decides what is and is not rendered at higher resolutions?

As i said....im no expert....but....i think fovated rendering is probably the immediate future of VR. But....if we expect every individual game developer to have to code every individual game for it......its never going to work. It seems to me that the solution for something like this needs to come from the HMD/HMD software itself if this is ever going to take off

I made the same point in other places, forums etc.
Making foveated rendering game specific, would be a death sentence for it.

Besides it really shouldn't be impossible to do a basic gradient in the rendering pipeline.
And the gradient could probably be pretty steep too.

Something like 2x supersampling in dead center, but the outside border areas downgraded to 0.5.

Adding things like the game being aware of eh at you are looking at would need to be in the game itself, but the actual nits and grits should, I hope be with the fove driver software.
 
I've been working with the FOVE tech folks to get the headset working. In order to install the Win 7 drivers, I essentially need to turn off most of my security and keep unsigned driver mode turned on. Not really comfortable with that for glaringly obvious reasons.

Last weekend I kept it unplugged as I worked on other things. May get back to it this weekend, but frankly, I'm not really motivated. I've seen glimmers of it working, but my Vive does work, is much more comfortable and works with Elite just fine. I'd rather work on getting the Vive and Steam VR working in Kubuntu than getting the FOVE up on Windows at this point in time.
 
Back
Top Bottom