One thing that you soon realizing in VR development is that performance is a key component to the quality of the experience. In creating 3D assets for tv and movies, everything is rendered out. So ultimately 1 frame out of the 24-30 frames per second that the viewer will be seeing could have actually taken hours to render. It famously took Pixar 11.5 hours to render one frame in the movie Cars 2. Despite CPU speed advancements since 2011 they more or less maintain that render-time due to the year after year introduction of new graphical advancements.
Now imagine having a stand alone headset running a mobile processor, rendering things out real-time at a minimum of 60 frames per second. You can see the problem here. Go below that frames per second and the user gets sick.
A helpful tool in Unreal is the Profiler.
You can record your stats by going to the Console and typing: stat startfile and type: stat stopfile when you are done recording your stats. Then use Unreal Profiler to look through your projects data and catch problems.
You can find this under Window/DeveloperTools/SessionFrontEnd
Then under the profile tab click load and locate the folder where the stat file was saved.
You can then look for any hitches in your time line and expand the game thread at the bottom to see which processes were taking up the most time.
Another useful tool is under FPS chart. A ramped distribution will tell you something is killing your FPS.