The results are in. Which is faster, Unreal Engine or Unity, Omniverse?
At OSF we’re fanatical about understanding the virtual user experience. Understanding Frame Rates (FPS) when developing hardware to run interconnected virtual applications is important, as it enables outerface developers to build experiences that won’t ‘rip’ the fabric of the user experience, eat up bandwidth, memory, and kill FPS.
Bench Testing Resting FPS Unity vs Unreal Engine vs Omniverse
We’ve tested the 3 real-time creation engines that we develop GODBOX to run, Unity, Unreal Engine and Omniverse (open BETA version), all running on identical NVIDIA A6000 GODBOX Workstations (see here for Desktop GODBOX specs). These professional grade workstations are built to enable developers to use meterverse development tools such as these, and they have been tested on real virtual productions for some of the worlds top studios.
With interoperability a priority for the build out of the metaverse, we tested the 3 top USD “capable” engines, Unity, Unreal Engine and Omniverse using USD Bench. This app developed by OSF, creates an identical, but random, USD 3D file on each machine to be tested.
Once the USD files has been opened into each creation engine, we can now establish our first test. To find each creation engines idle or resting FPS score.
Unity – USD – Idle FPS Score – 1030FPS
Well that’s smashed it, we lifted the FPS limits on the editor and we loaded the USD. Fast, but as you’ll see it’s not exactly what we expected to see. See the original Blender view port below. We connected blender as our origination DCC tool to write the USD file.
Unreal Engine – USD – Idle FPS Score – 305FPS
Again we lifted the FPS limits on the editor and we loaded the USD. Not so fast but so much better USD interoperability bringing in the lights this time much better, but as you’ll see it’s not exactly what we expected to see. But this makes us start to think about what devices our users will be using to access these engines requiring specific FPS speeds to maintain usability on specific devices.
Omniverse – USD – Idle FPS Score – 109FPS
We could not lift the FPS limits on the editor as such, we could only adjust it in the Create settings, and we loaded the USD. OMG was our response on this one, the open USD file looks a lot lot closer to our original USD in the original DCC tool viewport. Its now interesting to think about what we can get each engine to do, before we start to eat into this idle FPS rate.
Bench App – USD File
Based on needing to hit 90FPS, to make VR/AR feel good, and 30FPS to make your Desktop Monitor work smoothly, you usually know what your delivery FPS must reach, knowing the engines idle rate enables us to run more scientific experiments, with a base-line metric to test the way the application user experience is affected by multiple factors, from hardware to assets imported, UDP and the many other kinds of data present in real-time visualization, design and collaboration application development.