Testing Qt, Unity, and Unreal on Automotive Embedded Systems
As car manufacturers evaluate 3D rendering engines for their next-generation vehicles, the choice of technology has significant implications for system performance, development efficiency, and ultimately, user experience. We present a performance comparison of Qt Quick 3D, Unreal Engine, and Unity 3D, with a particular focus on embedded hardware constraints typical in automotive applications.
Key Highlights
- The same app, implemented in Qt Quick 3D, Unity 3D, and Unreal Engine, has a close level of visual fidelity
- The application built with Qt uses 50-53% less CPU than those created with Unreal and Unity
- The application built with Qt uses 45% less system RAM and 38-39% less VRAM than the alternatives
- Unlike the alternatives, Qt runs seamlessly across automotive platforms, simplifying code reuse
- For safety-critical applications, Qt can be certified according to industry standards
Why 3D Graphics
Graphics are an essential element of modern software, making applications more immediate, easier to use, and to understand. Today, 3D graphics are used, beyond gaming and simulation, in the automotive sector and other industrial applications to represent real-world objects and life-like situations on the display.
With 3D graphics, complex situations can be quickly and easily grasped at a glance. For instance, advanced driving assistance systems (ADAS) in cars increasingly include the real-time rendering of the car in its environment. Real-time reflections, shadows, and other effects contribute to making the resulting 3D scene on the dashboard nearly indistinguishable from the physical car’s surroundings.
In addition to real-time control of machines and devices, advanced 3D graphics are dominant in gaming and simulation applications. However, the type of software that runs on a car dashboard is rather different from that running in games or simulations. For instance, while in automotive displays the real-time interaction is more complex, the processing power is typically lower, and should be used sparingly to handle a variety of concurrent processes.
Resource Constraints of Embedded Systems
The embedded devices powering automotive HMIs are typically "resource-constrained" devices with very limited processing power, memory, and storage capabilities that need to handle multiple processes in parallel. For instance, ADAS must integrate data from various sensors, UI interaction, mapping and navigation, telltales and safety system, and more, in addition to high-fidelity graphics.
On the other hand, the desktop PCs running games or simulation applications are very powerful devices, fully dedicated to a single application, with unlimited boot time, etc.
Clearly, the way computational resources are utilized in the two settings differs significantly, and in the following sections, we present the setup and results of our comparison of Qt Quick 3D, Unreal Engine, and Unity 3D on the same app, including a 3D model running on an embedded system.
The 3D Engines Being Tested
The three engines we are testing—Qt Quick 3D (Qt for short), Unreal Engine (UE for short), and Unity 3D—have similar features and overlapping use cases. However, they also have notable differences that it is important to understand in order to select the right tool for a given purpose. Creating an automotive instrument cluster or ADAS system is very different from running a game or a simulation project, and as the right tooling, performance, and libraries can make the project a success, the wrong ones can make it fail—or more costly, or slower, or all of these together.
Qt Quick 3D (Qt)
Unreal Engine (UE)
Unity 3D
Architecture
Integrated 3D rendering framework built on QML and C++, leveraging Qt Quick scenegraph for efficient rendering
Full-featured game engine with a comprehensive 3D rendering pipeline, built on C++ with Blueprint visual scripting
Cross-platform game engine with component-based architecture, using C# for scripting
Use Cases
Automotive HMI, industrial controls, medical devices, simulation, embedded systems, and more
AAA gaming, architectural visualization, film production, virtual production, and high-fidelity simulations
Gaming, AR/VR experiences, architectural visualization, training simulations, and interactive content
Rendering Backend
Multi-backend support via Qt's Rendering Hardware Interface (RHI) - OpenGL, Vulkan, Metal, Direct3D 11/12
Custom renderer supporting DirectX 11/12, Vulkan, Metal, OpenGL
Gaming, AR/VR experiences, architectural visualization, training simulations, and interactive content
The Benchmark Setup
All three engines were tested on identical Pixel tablets, running Android Automotive OS. The test consisted in the real-time 3D rendering of a photorealistic 3D pickup truck model with detailed geometry, materials, and lighting. The scene includes a realistic urban environment with architectural background elements. The vehicle model continuously rotates to maintain a consistent GPU load during testing.
The benchmark demonstrates each engine's efficiency in rendering complex, photorealistic, real-world automotive scenes that could realistically enter a car display, for instance, in ADAS or the vehicle digital twin.
Using the same 3D model, materials, and lighting setup, the three engines produce closely aligned visual quality.
Readers can independently assess the quality of the resulting apps by inspecting the images below.
Can you guess what engine generated what image?
Unreal Engine
Qt Quick 3D
Unity 3D
Benchmark Results
System RAM Usage
VRAM Usage
Total Memory Footprint
CPU Utilization
GPU Utilization
Qt Quick 3D
653MB
481MB
1.13GB
8%
16.9%
Unreal Engine
1.2GB
778MB
1.98GB
17%
6.13%
Unity 3D
1.1GB
789MB
1.89GB
16%
11.4%
Memory Footprint
Qt Quick 3D uses 45% less RAM than Unreal Engine and 41% less than Unity 3D. Qt VRAM usage is 38% lower than Unreal and 39% lower than Unity.
In embedded automotive systems where memory resources are carefully allocated across multiple ECUs and applications, the efficiency brought by Qt enables more sophisticated functionality within existing hardware constraints.
CPU & GPU Performance
Qt demonstrates high CPU efficiency, using less than half the CPU resources of both Unreal Engine (53% reduction) and Unity 3D (50% reduction). This translates to increased battery life, better thermal performance, and headroom for application logic on embedded systems.
At the same time, higher GPU utilization indicates Qt leverages GPU hardware acceleration more effectively while maintaining lower CPU usage.
The overall system efficiency (CPU + GPU combined load) is advantageous for embedded applications.
Startup Time
Start-up times of around 3 seconds were found across the three applications. It should be noted, however, that Qt Framework does not require Qt Quick 3D to be loaded to display 2D assets and therefore is capable of shorter startup times, if needed.
Download our eBook, "User Interface Design"
This guide will help you navigate the vastness of UI software design, with valuable insights from the experience we, at Qt Group, have gained through decades of industrial work that have defined the very essence of UI software.
Other Differences
When playing a game or running a simulation, if you die, you have another life. In reality, it is not like that. Jokes apart, industrial applications and automotive software need to meet stringent safety regulations and include a certified safety-critical component for alarms, speed, warnings, turn signals, gear, etc. This component runs deterministically on a separate ASIL-D certified real-time operating system (RTOS). Unlike game engines, Qt supports such architecture and safety-critical applications with Qt Safe Renderer, and compatibility with a variety of RTOSs is one of the strong differentiators of Qt for industrial systems.
Adding to this, being optimized for high-end gaming PCs and consoles with dedicated graphics cards, Unity and Unreal require high-end automotive processors, with a strong impact on bill of materials. Instead of forcing users into costly high-end hardware, Qt cross-platform capabilities enable code reuse from high-end to low-end devices, paving the way to cost-efficient solutions, like microcontrollers, whenever advanced 3D graphics are not required.
Conclusions
Our benchmark demonstrates that all three engines produce photorealistic rendering with equivalent graphical fidelity.
On the other hand, Qt Quick 3D shows better performance on embedded systems, in terms of memory, CPU, and GPU.
This is probably not surprising, considering that Qt has been optimized for 3 decades for performance on embedded systems and is today, across industries, the world standard for human-machine interaction.
Perhaps the surprising aspect is that even in the 3D space, where game engines like Unity or Unreal have set standards so far, Qt shows indistinguishable results, though more performant and better suited to embedded systems.
Discover More Through Our Customer Cases:
Foilone | Built with Qt
Learn how Qt Professional Services helps the Marine Industry fast-track HMI development with out-of-the-box solutions that are deployed in a week whil...
Read More
CLEAN MOTION | Built with Qt
Learn how Qt Professional Services helps the Motor Vehicle's industry fast-track HMI development with out-of-the-box solutions that are deployed in a ...
Read More
Argotractors | Built with Qt
Argo Tractors delivers smartphone-like user experiences to their tractors, while reducing development time by 40% thanks to Qt.
Read More
Keurig | Built with Qt
Keurig's coffee machines provide a better brewing experience and cut development time with Qt Design Studio and Qt for MCUs.
Read More