This is an automated archive made by the Lemmit Bot.
The original was posted on /r/linux_gaming by /u/Different_Rafal on 2026-08-03 15:03:27+00:00.
Hi!
I released a native Linux build of the demo of my game on Steam. I wanted to share my experience, issues, and the results I achieved.
Linux build
The game is made in Unity 6. To create a Linux build on a Windows PC, you need to install the "Linux Build Support" module in Unity and the "Toolchain Win Linux x64" package.
Then, creating builds requires just switching to the "Linux platform" in Unity, which takes a few minutes, and then you can build it the same way as for Windows.
So, preparing a release for both Windows and Linux versions takes about 10 more minutes for my game.
Adding Linux support for the game on Steam requires setting multiple things in Steamworks, which is not difficult, but the options are in so many places that you can easily forget about something, so you need to test if it is working.
After that, you can configure paths for both the Windows and Linux builds in the SteamPipe tool, so you can then easily upload both builds with one click and then set them both live in Steamworks.
Game
Just a quick few words about my game:
Worlds Explorers is a 2D survival management game where you explore alien planets with carefully crafted, unique ecosystems, gathering resources to repair your stranded spaceship.
You can checkout the demo here: https://store.steampowered.com/app/3133600/Worlds_Explorers
Linux instalation
I installed Ubuntu 26.04 on my old notebook (12-years old). It was surprisingly easy, even installing it alongside existing Windows 8 was not a problem. Everything was working out-of-the-box and it runs better than Windows 8.
Issues on Linux
When testing the build on Linux, I found a few bugs that I managed to fix:
- Cursor size was enormous. The standard system cursor usually has a size of 32×32, while my custom sprite has a size of 128×128. On Windows, with the hardware cursor setting, it was automatically scaled down to the system cursor size. On Linux, it had its original size. I needed to set the sprite size in Unity to 32, and it worked correctly then.
- Ground texture was not working on Linux. I found out that it was caused by OpenGL not supporting "Sampler State" in my custom ground shader (Vulkan does not have this problem). I was using it to set the "wrap mode" for my ground texture, but as those textures were used only in this mode, I just modified the texture settings to use "wrap mode" instead of dynamically modifying it in the shader.
- In some cases (Load Game > Return to Main Menu for the first time after starting the game), most sprites in the Main Menu were blank white. After some debugging, I found out it was caused by one of my scripts getting null values in an array of references set in the Main Menu scene. Why it was happening, I still don't know, but excluding those objects from Addressables (which was not needed for them) fixed the problem and references are always correct now.
Performance
I made some tests with the native build and with Proton. This is not a professional test, it was done with one computer and one system, so these are not fair comparisons, just a curiosity that you might be interested in.
Disclaimer: This is a really old notebook. Just starting the Steam client takes a few minutes on it, so the performance is expected to not be great. The game works much better on even low-end modern computers.
Spec:
- CPU i5-4210m
- Ram 8GB DDR3
- GPU Radeon R7 m265
- Old HDD storage
- Resolution 1366×768
Native Build
- Game startup 24s first time, then 5-7s
- Generate new planet ~23s
- Load Game ~17s
- Main Menu ~152 fps
- Game ~54 fps
Proton 11
- Game startup 40-46s
- Generate new planet ~24s
- Load game ~19s
- Main Menu ~118 fps
- Game ~47 fps
So, we can see slightly better performance with the native build and significantly faster game startup. I don't know if the differences will be similar on better hardware.
I also wanted to compare it with Windows, but found out that Unity games do not work on Windows 7/8 since 2023+ version. Also Steam does not work correctly, even with some workarounds, on Windows 8 anymore.
There is no point in comparing with my Windows PC, which is mid-budget 7-years old (with small upgrades), but its performance is enormously greater - generation times there are few seconds and game has >144 fps on 2560x1440 resolution.
The Linux build has a size of 272 MB, while the Windows build has 232 MB. From what I see, the difference in size is related to the larger size of the GameAssembly library from Unity.
If you want to check out the demo on Linux, I will be really glad for any feedback - both about the game and about performance or any problems on Linux!