Trinity
From flying in small, beautiful dungeons to fleet fights containing thousands of players, the number of situations players can find themselves in is vast. This provides a lot of technical challenges that are unique to EVE Online, all of which impact how the game feels and plays. One of those challenges is “How do you display all of this on a screen?” For this, EVE uses its own rendering engine, named Trinity. Rendering engines are incredibly intricate, but to summarize and simplify, they need to do a huge number of complex calculations as fast as possible, so the game looks beautiful and runs as smooth as possible. Trinity has a lot of different potential circumstances to deal with, especially when it comes to computer hardware. Some play EVE Online on old hardware, while others upgrade their system almost every year with the latest cutting-edge technology. This range means that there is no ‘average’ hardware for playing EVE, and that rendering must be ensured on all these systems. From a gameplay perspective, EVE has a vast number of different styles. While trading in a station is fairly deterministic when it comes to rendering, flying in nullsec and being hotdropped by a huge fleet is a bit more complex. The game has to load many assets into memory simultaneously and render all of them while trying to keep the framerate as high as possible. To make matters more complex, EVE is 22 years old, and new assets are added constantly. Graphical features added a decade ago would have targeted the computer hardware of that time, but it will run significantly faster on modern hardware. Bringing the latest rendering features to EVE while ensuring existing assets aren’t broken in the process can be a challenge, given the thousands of unique models and textures across New Eden. For all these reasons, changes to Trinity must be made with care.Performance
At Fanfest 2023 a future vision for some of planned changes was presented. One of these features, known as a GPU Driven Pipeline, is a technical change in the way the CPU and GPU work together. Traditionally, rendering a scene involves the CPU figuring out what to send to the GPU, and then the GPU doing the work. While the linked presentation goes into more detail, a more modern rendering pipeline allows the GPU to do more of these calculations overall, reducing the CPU overhead. This is great for a few reasons:- EVE is often CPU-bound, meaning the CPU is the limiting factor and not the GPU. Freeing up the CPU in these situations can be very beneficial.[/*]
- A modern GPU can render more frames with this approach – it’s just simply faster due to the advances DirectX 12 (Windows) and Metal (macOS) offer with modern GPUs.[/*]
- It makes adding or changing features in the codebase easier, allowing improvements to reach capsuleers faster. In addition, it simplifies processes for artists bringing new assets to the game.[/*]
CPU & GPU | Resolution | FPS Before | FPS After | FPS % Increase | [/tr]
i7-7700 CPU & GTX 1060 | 1920 x 1080 | 40 | 53 | 32% | [/tr]
Ryzen 7 5800X & Radeon RX 6800 XT | 3840 x 2160 | 46 | 70 | 52% | [/tr]
i7-11700 & RTX 4070 Ti | 3840 x 2160 | 44 | 61 | 38% | [/tr]
Ryzen 7 7800X3D & Radeon RX 7800 XT | 3840 x 2160 | 60 | 68 | 13% | [/tr]
Mac M1 Max | 1920 x 1200 | 34 | 43 | 26% | [/tr]