Dæmon-vulkan is the multithreaded, Vulkan version of Daemon.
Windows | macOS | Linux |
---|---|---|
ℹ️ We provide ready-to-use downloads for the Unvanquished game on the Unvanquished download page, builds of the Dæmon engine are included.
!!! Daemon-vulkan builds are currently not included, you have to build it yourself !!!
ℹ️ The repository of the source code for the game logic of Unvanquished can be found there.
To fetch and build Dæmon-vulkan, you'll need:
git
,
cmake
,
and a C++23 compiler.
The following are actively supported:
gcc
≥ 14,
clang
≥ 19,
Visual Studio/MSVC (at least Visual Studio 2022 17.4).
Required:
zlib
,
libgmp
,
libnettle
,
libcurl
,
SDL2
,
GLEW
,
libpng
,
libjpeg
≥ 8,
libwebp
≥ 0.2.0,
Freetype
,
OpenAL
,
libogg
,
libvorbis
,
libopus
,
libopusfile
.
Optional:
ncurses
.
MSYS2 is the recommended way to build using MinGW on a Windows host.
Required packages: mingw-w64-x86_64-gcc
, mingw-w64-x86_64-cmake
, make
Daemon-vulkan requires several sub-repositories to be fetched before compilation. If you have not yet cloned this repository:
git clone --recurse-submodules https://github.com/DaemonEngine/Daemon-vulkan.git
If you have already cloned:
cd Daemon/
git submodule update --init --recursive
ℹ️ If cmake complains about missing files in libs/crunch/
folder or similar issue then you have skipped this step.
💡️ Instead of -j4
you can use -jN
where N
is your number of CPU cores to distribute compilation on them. Linux systems usually provide a handy nproc
tool that tells the number of CPU core so you can just do -j$(nproc)
to use all available cores.
Enter the directory before anything else:
cd Daemon/
- Run CMake.
- Choose your compiler.
- Open
Daemon.sln
and compile.
NatVis files are contained in /src/engine/renderer-vulkan/VSSupport/
. You can use them to get the custom visualisation for Daemon-vulkan containers in VS/VS Code. You may need to add them to the project (in Visual Studio right-click on the project -> Existing Item... -> Select the .natvis files).
Produced files will be stored in a new directory named build
.
cmake -H. -Bbuild
cmake --build build -- -j4
cmake -H. -Bbuild -DCMAKE_TOOLCHAIN_FILE=cmake/cross-toolchain-mingw64.cmake
cmake --build build -- -j4
ℹ️ On Windows you'll have to use daemon-vulkan.exe
and daemonded.exe
instead of ./daemon-vulkan
and ./daemonded
, everything else will be the same.
To run a game you would need a pkg/
folder full of .dpk
files provided by the Dæmon-based game you want to run. This pkg/
folder has to be stored next to the daemon
binary.
You then run the game this way:
./daemon-vulkan
If you want to run a dedicated server, you may want to use the non-graphical daemonded
server binary and start a map this way:
./daemonded +map <mapname>
Map names and other options may be specific to the game.