VR Project - Depth of Field - tech issues?

Hey folks, quick question.

I have a project based off the VR template. Unless I set scalability settings to Cinematic for Post Process I can’t see DoF. With ‘cinematic’ it shows up in the editor but when I try to preview in VR the process crashes. Epic settings don’t cause any crashes in non-vr projects for me and DoF shows up fine.

All drivers are up to date, but I am running an old GeForce GTX 680, which I suspect just has issues with VR rendering. Hence not creating a proper ticket but asking around on the forum first.

So TL;DR does DoF work fine for everyone else in vr? If so I might just need to bite the bullet and upgrade my hardware.
Thank you so much for your time.

Just got a GTX 1080 and the issues still occurs. No way no uses DoF in VR. But quite surprised that a google search doesn’t yield any results. Once again any help would be much appreciated. Thank you!

Hi, I had a similar issue and then realized that some optimization/default config had another “blur” algorithm selected which was overriding my selection.

Also, you might discover that DoF is too heavy for VR, and won’t give you the kind of results you’re seeking.

Had to explore this for a “dream sequence” in a project, and then realized that a simple fade-to-white or other post-processes were cheaper and were actually less jarring.

Hope that helps some,

I didn’t personally experiment with DoF, but will give it a go later i think. However, as far as i understand, DoF/blur can cause sensation of movement especially in the periphial view which causes vection which usally the main cause of sim sickness. So personally i would be carefull with this for prolonged periods of time

Depth of Field (DOF) is not something that you want to use in VR as it can give the user simulation sickness. Because of this, it is not a supported VR feature. The reason for this is that DOF comes from a combination of things like the object’s distance from the camera, the lens that is used and the camera settings (Super high-level explanation of this for simplicity sake).

When using VR, you are trying to simulate the way your eyes work and not how two cameras work so a lot of features that you might normally use, like DOF or vignette camera distortion, for example, will not function as these types of effects do not affect our eyes like they affect cameras. However that is not to say that DOF is not something we see with our eyes, we do, it is just very subtle and not as well defined as a camera might. Because of this DOF will naturally occur in VR when the user tries to focus on objects that are too close or too far way which means you can get a very subtle DOF for free in VR.

As a rule of thumb for VR development in general, you never want to force a VR user to do something that you would find super annoying in real life. For example, you should never forcefully move a VR users head to point in a given direction. That would be the real life equivalent of someone standing behind you and forcibly moving your head to point in a direction each time you move your head slightly. Keeping this in mind can help you avoid some common VR pitfalls that everyone falls into. If you have any more questions about this, please let me know.

1 Like

Jonas, that is very interesting! And yes, that sensation of movement it causes can be quite unpleasant for me who seldom experiences VR induced sickness. Even just moments is enough to wear me out and need a break. Don’t bother trying it. hehe

Sam, that makes a lot of sense. I think forcing someone to look at the world around them through some of the mentioned “lenses”/effects would definitely cause nausea in the non-VR world. I can’t even try to focus my eyes on my nose for more than a few seconds without inducing a headache. :cool:

Glad I could help you out. Please let me know if you have any more questions or run into any more issues.

Now that the Fove 0 is being released with foveated eye tracking, can we expect to see some sort of foveated rendering or adaptive DOF in UE4 to work with this headset?

By the way, I’ve noticed that DoF is not usable in a VR project, even on a SceneCapture2D… Is that an issue ?
I’ve put a SceneCaptureComponent2D on one of my vive controllers, and the captured view is rendered on a cube. I’m not able to activate the DoF on the scenecapture.

EDIT : issue only relevant in the VR Template. I migrated all my assets in a FPS Template and it works.