Jump to content

Ultra Engine Benchmarks Revealed - 10x Faster than Unity, Leadwerks


Admin

70,083 views

 Share

A few years ago, some folks at NASA asked for my help with some VR projects they were working on. They had switched to Leadwerks and were getting better performance with that, but it still wasn't fast enough for what they were trying to do. I flew from California out to Goddard Space Flight Center to meet with them. When I saw what NASA was doing with my software, my jaw hit the floor.

Picture1.jpg.695f4e7a981e3a048692061c402e0b26.jpg

Goddard Space Flight Center

Rendering performance in VR is critical because if the framerate drops, it creates a discontinuity between what your visual and vestibular (sense of balance) systems perceive. This causes instant and severe motion sickness and can result in nausea, vomiting, and dizziness. The work NASA was doing with VR involved loading engineering CAD models with tens of millions of polygons and thousands of articulated sub-objects, and displaying them in VR. Naturally, the VR rendering performance for these types of models absolutely crawled. If we were making a VR game we would just optimize the models and design everything to fit within a polygon budget, but engineering requires complex models with many fine details. We couldn't just "optimize away" important details the engineers wanted to inspect in VR.

image.png.3cf2ec6bbf5b869b667ab21a5c2957c1.png

NASA model of International Space Station

I came away from that meeting thinking it was an impossible problem to solve, and I flew home to California. Over the next weeks I started thinking "I know this is impossible, but if it were possible, what would it look like?" This lead to the development of a new game engine designed specifically to maximize performance for VR.

Today I am happy to reveal performance benchmarks of the new Ultra Engine compared to Leadwerks and Unity. These tests reveal different performance bottlenecks that can occur in real-time applications that would cause slow performance. Testing was performed on Windows 10 with an Nvidia GEForce 1080 GPU.

Instanced Geometry Test

In this test, a 3D grid of 32,768 instanced cubes is created. This evaluates how the renderer handles a large number of objects with CPU frustum culling enabled. Frustum culling on the CPU is important because it allows the engine to discard large parts of the scene from processing in the rendering loop. It also allows the engine to skip animation for offscreen objects.

image.png.f211144ebf34b92ccd2848a3b001251f.png

In this test, Ultra Engine outperforms both Leadwerks and Unity by 20x, with 95% GPU utilization:

Image1.thumb.png.778a1b0c8328b1535ce2c946fe18d6cc.png

Animation Test

In this test, 1024 animated characters are displayed. Each character has a unique skeleton and is animated independently with no instancing.

image.png.e91c145d5f08f4e23fe06ab26f485781.png

In this test, Unity outperforms Leadwerks, but Ultra Engine is still more than 18x faster, with much higher GPU utilization:

Image1.thumb.png.c01c5a6916d976cb7e5bb747004770b5.png

Lighting Test

This test renders a scene made up of 1000 instanced boxes and 25 point lights. This provides a measure of how efficiently each engine handles the interaction between lights and objects, and simulates the lighting overhead of a complex scene.

image.png.6a00fecefb26bb5ef5ec016c37809e2a.png

In this test the Leadwerks renderer has a significant performance advantage over Unity, but again Ultra Engine is much faster than either:

Image3.thumb.png.67e7ba10cf042482b7831ce57eb72428.png

Unique Geometry Test

In this test 4096 unique (not instanced) boxes are created and drawn onscreen. This simulates a complex scene with many unique objects.

image.png.2b43ad5163b9b1b83667240bbeb6b664.png

Unity and Leadwerks both struggled to render this scene in real-time, but Ultra Engine ran at an astounding 6000+ frames per second:

Image4.thumb.png.ed432c8a951128c5d364fb9c512762da.png

As you can see, a variety of scenarios that would cause the Unity or Leadwerks renderer to bottleneck run with absolutely no problems in Ultra Engine. This technology is being developed into a full game engine with a visual editor, complete with a plugins and extensions system. Ultra Engine will deliver order-of-magnitude faster performance, to eliminate motion sickness and lower hardware costs for VR applications, as well as general game development. There's no need to spend hours and days optimizing your game, because when you use Ultra Engine your game is already optimized.

Image1.thumb.jpg.77623ea8241164b5de5efa755727c22b.jpg

New editor work-in-progress

If you're in Orlando the last week of November, stop by booth #2341 in the small business pavilion during the I/ITSEC 2021 expo to see a live demo of our game-changing new technology.

If you would like to be notified when Ultra Engine becomes available, sign up for the mailing list.

Update

Benchmarks are now available for download.

  • Like 12
 Share

36 Comments


Recommended Comments



9 minutes ago, Marcousik said:

Is there a little workaround for LE 4.6 ^^ ?

It's not a simple problem to solve. It required a totally new design of the engine.

  • Thanks 1
Link to comment
7 hours ago, Marcousik said:

Is there a little workaround for LE 4.6 ^^ ?

Less objects, less materials, less shaders is generally how you solve this. Just merge everything into one mesh.

  • Thanks 1
Link to comment
On 11/12/2021 at 3:03 PM, Genebris said:

Just merge everything into one mesh.

How? I'm used to design a level directly  in the editor, as it is comfortable to adjust things, depends on how you develop the game.

I think you can export the mesh as .obj, but than good bye all the texturing

Link to comment

There's a collapse feature in the model editor. If your models have a lot of limbs that will make a big difference.

Link to comment
15 minutes ago, IceBurger said:

Is this still true with all the lighting development you have been doing?

I have not done any benchmarks yet of the GI system. I'm trying to make it very fast.

  • Like 1
Link to comment
4 hours ago, Genebris said:

Well, Unity or Leadwerks don't even have realtime GI systems so it's hard to compare.

Apparently, Unreal's GI is too slow for VR.

Link to comment

Guest
Add a comment...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...