We do often include affiliate links to earn us some pennies. See more here.
For those of you using Unreal Engine 4 on Linux, you may be interested to know about the d3d4linux project. The d3d4linux project allows developers to compile HLSL shaders on Linux using the Microsoft DirectX compiler DLL.

It uses a Wine program in the background to do the work for you, which is quite an inventive solution really.

Sam from developer Dontnod Entertainment, the creators of Life is Strange and Remember Me shared it on twitter recently. The github page for d3d4linux states they actually use it in their studio.

Hopefully some of you will find it useful if you're developing with Unreal on Linux. Article taken from GamingOnLinux.com.
0 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. You can also follow my personal adventures on Bluesky.
See more from me
The comments on this article are closed.
All posts need to follow our rules. For users logged in: please hit the Report Flag icon on any post that breaks the rules or contains illegal / harmful content. Guest readers can email us for any issues.
15 comments

Raven67854 Jun 14, 2016
Seems odd to go through all of this work rather than use Unreal Engine 4's native Linux version. But hey! Could be cool for other projects like MonoGame.
Liam Dawe Jun 14, 2016
Outstanding work from an outstanding developer.

But it's DONTNOD not "DOTNOD" ...
Doh, fixed.
Kuduzkehpan Jun 14, 2016
HLSL compiling would help game porting companies to bring more games to Linux.
Cheeer!
lejimster Jun 14, 2016
Seems odd to go through all of this work rather than use Unreal Engine 4's native Linux version. But hey! Could be cool for other projects like MonoGame.

Maybe it's just the open source drivers, but the Linux version of UE4 needs some more love and attention. I was just trying out the latest UT Alpha and it's stuttery as hell.
Raven67854 Jun 14, 2016
Seems odd to go through all of this work rather than use Unreal Engine 4's native Linux version. But hey! Could be cool for other projects like MonoGame.

Maybe it's just the open source drivers, but the Linux version of UE4 needs some more love and attention. I was just trying out the latest UT Alpha and it's stuttery as hell.

Might be! They have been working on the render which is all the HLSL->GLSL compiler would affect. Finally have GL4.3 as of I think version 4.9? So feature wise the OpenGL render can now support all features. No longer gimped by the Mac version.
wintermute Jun 14, 2016
Is this the guy that used to be a Debian contributor/maintainer?

Seems odd to go through all of this work rather than use Unreal Engine 4's native Linux version. But hey! Could be cool for other projects like MonoGame.

My reading of the GitHub page is that this is so that they can do their Windows builds on Linux.


Last edited by wintermute on 14 June 2016 at 3:45 pm UTC
nocri Jun 14, 2016
Seems odd to go through all of this work rather than use Unreal Engine 4's native Linux version. But hey! Could be cool for other projects like MonoGame.

Maybe it's just the open source drivers, but the Linux version of UE4 needs some more love and attention. I was just trying out the latest UT Alpha and it's stuttery as hell.

Try

#!/bin/bash
./Engine/Binaries/Linux/UE4-Linux-Shipping UnrealTournament -opengl3 -USEALLAVAILABLECORES -lowmemory


as a launch script
thykr Jun 14, 2016
Wow this is huge!
Would this ease up the port of Life is Strange and their other games though?
That'd be awesome! Every developer out there should know about this project!
ElectricPrism Jun 14, 2016
Unreal Tournament 4 needs a Linux Client badly so we don't have to manually update our UT4 installs from the tar.gz

Seems odd to go through all of this work rather than use Unreal Engine 4's native Linux version. But hey! Could be cool for other projects like MonoGame.

If you talk to developers about their coding I think you'll find most of us do many odd things and simply enjoy the inventiveness of testing the hypothesis "Can I do.... X". Most of us never ask "Should I", or "Is this practical".

And then there scenarios where bugs become features like the . prefix in Linux indicating hidden files started out as a bug but became a feature later.
Raven67854 Jun 14, 2016
Unreal Tournament 4 needs a Linux Client badly so we don't have to manually update our UT4 installs from the tar.gz

Seems odd to go through all of this work rather than use Unreal Engine 4's native Linux version. But hey! Could be cool for other projects like MonoGame.

If you talk to developers about their coding I think you'll find most of us do many odd things and simply enjoy the inventiveness of testing the hypothesis "Can I do.... X". Most of us never ask "Should I", or "Is this practical".

And then there scenarios where bugs become features like the . prefix in Linux indicating hidden files started out as a bug but became a feature later.

After thinking about it for a moment awhile ago. I realized that DontNod(what a great name) uses Unreal Engine 3 and for their new game Vampyr probably an old build of Unreal Engine 4 that didn't have Linux support. So it makes sense that they would need some middle-layer to give them help. As moving to a newer build of Unreal is a hell of a task.
wintermute Jun 14, 2016
So it makes sense that they would need some middle-layer to give them help. As moving to a newer build of Unreal is a hell of a task.

I'm going to repeat what I said before: This tool allows them to do Windows builds on Linux, it is not something for inclusion into the Linux builds of a game.

d3d4linux ... is being successfully used at Dontnod Entertainment to package Windows versions of Unreal Engine 4 games.
flesk Jun 14, 2016
View PC info
  • Contributing Editor
Is this the guy that used to be a Debian contributor/maintainer?

Yes.
slaapliedje Jun 15, 2016
Is this the guy that used to be a Debian contributor/maintainer?

Yes.

I can't read that name as anything but Hovercar. Which of course brings to mind a song called Hover Car by Fangbaby.

https://soundcloud.com/fangbaby (explicit lyric warning from the 80s)

Enjoy this rather odd band. I found them randomly one day.

Oh, and more on topic; for the love of god UE4 is awesome, we need SteamVR support now so I can play around with the editor in VR!


Last edited by slaapliedje on 15 June 2016 at 12:29 am UTC
Shmerl Jun 15, 2016
We need a proper open HLSL compiler to port DX games properly. MS plan to open up their HLSL parser at least. See here: https://github.com/KhronosGroup/glslang/issues/200
Cybolic Jun 15, 2016
I hope they'll continue being awesome in regards to Linux support when Vampyr comes out! :D
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.