Confused on Steam Play and Proton? Be sure to check out our guide.
We do often include affiliate links to earn us some pennies. See more here.

After chatting on Twitter with a fellow Rocket League enthusiast about the performance of the game, I decided to take a look.

Rocket League originally released for Linux back in 2016, using an older build of Unreal Engine 3 with OpenGL as the renderer. With that in mind, it's one of the older major Linux ports available to us. Age is just a number though, it's a fantastic game. It's not perfect though and there's plenty of room for improvements.

To demonstrate this (and see how far D9VK has come), I've taken a look at it three different ways:

  • Firstly, there's the native Linux version of course.
  • The next, is the Linux native version again, but this time using NVIDIA's threaded OpenGL optimizations (more info here) which NVIDIA rarely switch on by default (there's about 7 titles in their whitelist for it) and Rocket League doesn't tell the driver to turn it on. To use it, simply add:
    "__GL_THREADED_OPTIMIZATIONS=1 %command%"
    As a launch option on Steam for any OpenGL game.
  • Finally, there's Steam Play using the experimental D9VK (added in Steam Play Proton 4.11) which translates the Windows version into Vulkan to run it on Linux. Use "PROTON_USE_D9VK=1 %command%" as a launch option on Steam to use D9VK with Direct 3D 9 games.

For reference: The testing was on an up to date Manjaro Linux install, using an NVIDIA 980ti and the 430.26 driver with an Intel i7-5960X. Results will obviously vary based on CPU/GPU and more.

The results are pretty surprising, using the same replay of a crowded 3v3 match on probably the most demanding map in the game at 1080p with all settings maxed out:

YouTube Thumbnail
YouTube videos require cookies, you must accept their cookies to view. View cookie preferences.
Accept Cookies & Show   Direct Link

Note: This map does have one issue where the area outside the playing field is rendered differently. The Linux version is too bright and shows too much, the Windows version with Steam Play and D9VK version is much more correct.

As an additional measure, here's another video during a 2v2 match on a different map using the exact same testing method:

YouTube Thumbnail
YouTube videos require cookies, you must accept their cookies to view. View cookie preferences.
Accept Cookies & Show   Direct Link

As we can see, without NVIDIA's threaded optimizations the Linux version comes in dead last easily in both videos. With it, performance is much closer and it's smoother but Steam Play with D9VK comes out on top in both. There's a few moments where the Linux native build with threaded OpenGL beats Steam Play with D9VK but not many. Impressive really, since D9VK is classed as "experimental" and likely has plenty more optimizations still left to be done before it's ready.

So what's the takeaway here?

Well, Rocket League on Linux can be enjoyed quite easily and Psyonix (the developer) should absolutely enable NVIDIA's threaded OpenGL optimizations on Linux. They don't even need to update the game, they can just add the launch option themselves by default. If you do have some performance issues, Steam Play can likely make the experience even smoother again. The biggest difference is hitching, with Steam Play the game remains a lot more fluid overall. This doesn't mean Steam Play is suddenly better than native games of course, it all depends on how the game was ported to Linux. To be clear, with Steam Play it has its own issues that I've not seen in the native Linux version. Sometimes with Steam Play the game will repeat bits of audio, crash and hard-lock my PC (rare but it happens).

Also we are comparing OpenGL to Vulkan, that alone can make a big difference depending on the implementation. It's all about the time spent on the Linux version, with Steam Play (as shown) clearly Linux is a gaming platform that can perform well (and in many cases threaded OpenGL does great too). With enough time and a bigger market share, developers would spend more time on their Linux ports. First we have to get there.

If you wish to join me in adoring Rocket League like a second child (it really is my #1 game), you may find it on Humble Store and Steam.

The article was updated after publishing with a second video and some wording adjustments.

Article taken from GamingOnLinux.com.
27 Likes
About the author -
author picture
I am the owner of GamingOnLinux. After discovering Linux back in the days of Mandrake in 2003, I constantly checked on the progress of Linux until Ubuntu appeared on the scene and it helped me to really love it. You can reach me easily by emailing GamingOnLinux directly.
See more from me
The comments on this article are closed.
52 comments
Page: «3/3
  Go to:

Grifter Aug 4, 2019
Quoting: dpanterHow many fps do you need in RL?

ALL OF THEM!

EDIT: On a more serious note though, with this threaded gl variable I'm now getting 450ish frames in main menu, and 350-450 in free play, it drops a bit in a real game of course, but those are still significant improvements especially for an old i5 750 + 980 =)


Last edited by Grifter on 4 August 2019 at 12:48 am UTC
dpanter Aug 4, 2019


Oh you can remove the 250 fps cap? Nice! Also, why :P
ZigZag Aug 4, 2019
Since yesterday and a few updates from Manjaro the game launches with D9VK and goes to the main menu, where after a second it crashes the complete system, anyone else experiencing this?
Grifter Aug 4, 2019
Quoting: dpanterAlso, why

Because of how physics dependent rocket league is and extremely sensitive to input lag because of it, it always helps to have the most recent frames presented to you.
FireBurn Aug 5, 2019
Would love to see the same tests done with the open source AMD drivers, native, d9vk and gallium nine
dvd Aug 5, 2019
Quoting: Guest
Quoting: dvdWhat we need most is middleware using cross-platform, standard tools and APIs like Vulkan, that in the long run enable developers to put out their games on multiple platforms at a lot lower cost. That would make porting unnecessary and a thing of the past. That said, it's at this point still a long way off, as there are only a handful of the expensive games that are made with such tools, like id software or croteam games.
It's Android, more than anything else, that encourages game makers, middleware writers, and game engine makers to use Vulkan. Being able to use MoltenVK for iOS also helps. Any other use is way down the list.

Well that's probably true, since Microsoft pushes DX hard and the majority of developers probably know it a lot better than the alternatives. For us it only matters because if these software reach a point where they utilize standard technologies (i mean by that ones not tied to a specific company) there will be no need of porting in today's sense, and maintaining code across all the targeted platforms becomes easier. (I'm not too familiar with consoles, but i assume that all of those except the xbone use either OGL or Vulkan)
tofuhead Aug 5, 2019
hmm, I tried the "__GL_THREADED_OPTIMIZATIONS=1 %command%" thing, but it gave the exact same FPS here.. D9VK I didn't try.. and looking at the screenshots, background details are very blurry on that..

.b
tuubi Aug 5, 2019
View PC info
  • Supporter Plus
Quoting: tofuheadhmm, I tried the "__GL_THREADED_OPTIMIZATIONS=1 %command%" thing, but it gave the exact same FPS here..
That probably means your i7 is perfectly capable of feeding your modest GPU even on a single thread. I guess D9VK might be worth a try. (As explained in the article and the comments, the background is actually supposed to look like that.)
tofuhead Aug 5, 2019
Quoting: tuubiThat probably means your i7 is perfectly capable of feeding your modest GPU even on a single thread. I guess D9VK might be worth a try.

ah.. well, good to know. I'm fine with it, I don't think I bother trying to get into that proton thing for some extra fps. game works perfectly, no crashes, controllers work, sound works.. so I'm happy with the linux version.

with wine, there is almost always something that doesn't quite work.

.b
SirLootALot Aug 6, 2019
"Age is just a number though"... oof
I would rephrase that.
appetrosyan Aug 6, 2019
Quoting: dvdWhat we need most is middleware using cross-platform, standard tools and APIs like Vulkan, that in the long run enable developers to put out their games on multiple platforms at a lot lower cost. That would make porting unnecessary and a thing of the past. That said, it's at this point still a long way off, as there are only a handful of the expensive games that are made with such tools, like id software or croteam games.

What we actually need, is getting that middleware off the consoles.
Liam Dawe Aug 21, 2019
Quoting: SirLootALot"Age is just a number though"... oof
I would rephrase that.
Why? It's a well known saying and it's just a little joke about it being an older port. Don't tell me people are overly sensitive to such a saying when said about software...
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
The comments on this article are closed.