Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DagorEngine build experience on Linux #98

Open
boberfly opened this issue Dec 11, 2024 · 4 comments
Open

DagorEngine build experience on Linux #98

boberfly opened this issue Dec 11, 2024 · 4 comments

Comments

@boberfly
Copy link

Hi I gave DagorEngine a build on a Ubuntu 24.04 from source and I'd like to document my findings to help others.

Specs:

  • TR 3990x 64-core 256GB
  • 6900XT 16GB
  • X11 Gnome desktop

Git-cloned here:
/home/alex/dev/dagordev/DagorEngine
Devtools here:
/home/alex/dev/dagordev/devtools
I followed the instructions by first running the devtools build. One thing to note is having jam 2.6.1 from apt pre-installed wasn't suitable until I removed it and used the one that is downloaded by this script (2.5-G8 is a hard-requirement, otherwise the scripts will fail).

I downloaded the following and extracted over /home/alex/dev/dagordev/DagorEngine

  • tools-base.7z
  • samples-base.7z
  • outerSpace-devsrc.7z
  • east_district-dagor.tar.gz

My .bashrc has added:

export GDEVTOOL=/home/alex/dev/dagordev/devtools
export PATH=$GDEVTOOL:$PATH

Running ./build_all_linux.sh successfully builds and is about a half-hour roughly.
Running ./dabuild_all_linux.sh successfully builds and is about 3 minutes (important! I was getting issues with res/.blk issues without it!)

Running dngSceneViewer/east_district ./viewer.linux.sh is working except it seems like the mouse cursor is hard-locked to the left, and getting into the game it is permanently strafing the player to the left, maybe a Linux bug?

Running outerSpace via ./launcher_linux.sh I get ./launcher_linux.sh: line 1: $'\r': command not found however the launcher does launch. I run default values and hit the play button top-right and plays great, and the left-key is not stuck.

The other examples look like they load great and the GI and water/skies samples look great here!

Cheers

@boberfly
Copy link
Author

Just to note I tried vkd3d-proton 2.13 via Bottles to see how the windows binary would work in DX12 mode and I got this:
Screenshot_20241211_171657

Worth a shot, I guess VKD3D is missing some cap checks? I also tried my second GPU (Geforce 2070 RTX 8GB) same result.

@NicSavichev
Copy link
Contributor

Running outerSpace via ./launcher_linux.sh I get ./launcher_linux.sh: line 1: $'\r': command not found however the launcher does launch. I run default values and hit the play button top-right and plays great, and the left-key is not stuck.

I think this is cause by the fact outerSpace-devsrc.7z was built on windows so shell scripts had \r\n instead of just \n
I will take care on it for next update.

@NicSavichev
Copy link
Contributor

Running dngSceneViewer/east_district ./viewer.linux.sh is working except it seems like the mouse cursor is hard-locked to the left, and getting into the game it is permanently strafing the player to the left, maybe a Linux bug?

This may be Linux bug indeed, since I tested built applications on 2 different linux distros and haven't faced such problem.
Also it may be some obscure bug in our hid driver related to specific linux distro, you could add logs to see what happens in driver (prog/engine/drv/hid_mouse)
Did you try to run prebuilt linux binaries? It is built on Centos7 and has minimal dependencies on system libs so it should run on any linux (we use it to build linux versions of our games)

@boberfly
Copy link
Author

Hi @NicSavichev thanks for the replies.

Also it may be some obscure bug in our hid driver related to specific linux distro, you could add logs to see what happens in driver (prog/engine/drv/hid_mouse)

I'm very new so I'm not too sure how to do this but I can take a look.

Did you try to run prebuilt linux binaries?

Not yet however I think the viewer/east_district is the outlier which is using the prebuilt binaries (I get FMOD audio, I don't have a license for that one so I presume audio wouldn't work if that's missing).

It is built on Centos7 and has minimal dependencies on system libs so it should run on any linux (we use it to build linux versions of our games)

Good choice indeed, I have a VFX dev background and that's the oldest distro/glibc we target (now Rocky/Alma 8) - I can try building in a distrobox container with centos7/rocky8 and see if the HID issue appears when I run it on the host distro.

I saw Enlisted is supported on Steamdeck so that means Proton should be fine with DagorEngine, I'll take a look at that assert later if it's something trivial.

Cheers!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants