I want to start by saying that I think the Oculus Rift support in Unreal Engine 4 have bad performance. How can I say this? Because I feel the performance in Start Citizen is better.
And when you start to reason why you can always say that the Oculus Rift is in development so it will most likely be better as development progress. And I hope it will because I feel the performance is dropping to half when stereo is on as to how it feels when it is off.
And how is it possible that Star Citizen, a game that has not reached Alpha stage yet, can have better Oculus Rift flow than Unreal Engine 4? A game that is built on CryEngine. An engine that have no official Oculus Rift support at all.
What do you think? Am I wrong? Am I right? Can be better? Will it be better?
The point is by default quality is set to EPIC so performances are bad if you don’t have a GeForce Titan or at least a GTX 780!
For Oculus Rift, Try reducing supersambling to 140% or 120% with the following console command ;
hmd sp 140
give me 60FPS on Couch Knights on a GTX 750 with very good quality
Thanks to SRombauts for linking those perf threads!
By default, we try to strike a balance of high end features, and runnable performance on the demos that we create. However, that might not be the same as on your machine! The demos that we shipped use upscaling, and frame flushing to achieve as low latency as possible with good visual quality. Those are trade-offs we chose to make given the demo spec of the hardware we were shipping on. However, those might not be the same that you feel are necessary, or in line with other games!
For instance, if you disable FinishCurrentFrame, you’ll see an average of 40% of your frame back, but with slightly higher frame latency. We always keep it on, but feel free to turn it off if you don’t feel the same way about latency as we do. Also, decreasing ScreenPercentage is a good way to get lots of perf back by trading visual quality.
Please note that there’s currently a perf drop on DK1s due to screen upscaling being set up to much higher than it should be, but we’re working on that to get a fix out to you guys ASAP.
It is, but it has not gone through rigorous testing yet since it’s so new. Please report all errors to the AnswerHub Bug Reports, so that we can get them fixed swiftly.
I have to agree the performance drop from using the DK2 on a fairly simply scene is very extreme. I typically run a very stable scene with 120fps+ on the monitor which will drop to 65ish or lower when enabling DK2 even with ScreenPercentage(sp) set to 100 and smoothing turned off (r.FinishCurrentFrame off doesn’t seem to have an effect).
Given that that the DK2 requires VSync on 75fps with low persistence, any frame rate below 75 is very apparent, even when it would be considered otherwise a silky smooth ‘60fps’. I found the most bearable simple fix was to turn off low persistence (hmd lp on/off) if your frame rate stays below 70ish fps over an interval. Dropping sp to 70 brings the visuals closer to a DK1 experience and you could call it usable, but when you compare it to the smooth experience you get from DK2, its not really a long term option.
Based off of Couch Knights it seems we’re now stuck with ~600k poly scene with medium shader intensity to pull off on a 4TFlops+ Gfx card (roughly a 280x, considered high end).
How does the rendering pipeline look like for OR? what can be changed to lower the frame rate drop that happens when enabling VR? While I understand that an HMD renders twice, the screen is half for each render, shouldn’t the drop be smaller?
As an aside you can use the 0.4 SDK if you use the Oculus “Service” Manager - By Bilago which allows you to stop the oculus service and easily stop or start aero ensure vsync stays at 75.
I think there’s a lot of people mistakenly running their rift demos/sample maps directly from the UE4 editor as standalone player… I actually think UE4 runs better than Unity in general and it’s just a misconception. You need to make sure you are not running the editor at the same time as your scene/demo. Close the editor completely, as it kills the framerate from being on in the background! Then, right click the .uproject file for your project and choose “launch” or you can also just package it as a standalone (although there is currently a bug with that on some sample content maps for 4.3/4.4)
Also once in your game, bring up the console (~) and use the console command “hmd sp” to optimize the framerate. First do “stat FPS” to show your framerate… Then if it’s not hitting 75 fps trying something like “hmd sp 100” and see if it gets better. will all be automatic eventually.
You guy do realize that when you render with the Rift, it has to render the scene twice right? Of course you are going to see a large decrease in performance. Not to mention all of the other filters and such that go into it. is a problem with every single engine on the market, not just UE4 or Unity. It’s actually one of the reasons why DK2 has a smaller FoV than DK1 did.
driving me nuts. Have the same issues. Weird thing is that I run a titan black, and the fps is still high. But I got ghosting.
Any option needs to be setup in the project to get rid of lantency?
HMD SP 100 boosts my frame rate up to 120fps from 60-75fps but is freezes my Rift. It becomes unresponsive.
The feed fluctuates from 65-75fps on the DK2 on a GTX680 (2GB) card on the Realistic Rendering demo scene.
new portrait rotation spec for the DK2 screen and vertical tearing is killing developers trying to push FPS limits on next gen development. The DK1 could at least stand to drop to 40-50fps and it was bearable. 65-74fps and it’s excruciating on the DK2!!
EDIT:
“HMD TIMEWARP” solved my judder, now butter smooth synced 75fps
I’ve been using Direct Mode, and by using alt+enter on an unreal game, I’m able to get 100fps+. GTX 770. I don’t know if using extended desktop mode is still recommended.