Descent 3 by Outrage Entertainment
Go to file
Azamat H. Hackimov 4826c37a69 Add BUILD_INTERFACE to cfile module
Other modules that depends on it, can reuse includes on linking.
There some files formally not belonging any packages (lib directory), as workaround there temporary include_directories(cfile) on root of project. After migrating all modules this can be removed.
2024-04-24 00:41:02 +03:00
.github Update build.yml 2024-04-22 17:31:41 -04:00
2dlib Add BUILD_INTERFACE to cfile module 2024-04-24 00:41:02 +03:00
acmlib Some more CMake white space formatting 2024-04-21 11:46:32 +02:00
AudioEncode Some more CMake white space formatting 2024-04-21 11:46:32 +02:00
bitmap Add BUILD_INTERFACE to cfile module 2024-04-24 00:41:02 +03:00
cfile Add BUILD_INTERFACE to cfile module 2024-04-24 00:41:02 +03:00
czip Some more CMake white space formatting 2024-04-21 11:46:32 +02:00
d3music Some more CMake white space formatting 2024-04-21 11:46:32 +02:00
dd_grwin32 Some more CMake white space formatting 2024-04-21 11:46:32 +02:00
dd_lnxsound Add BUILD_INTERFACE to cfile module 2024-04-24 00:41:02 +03:00
dd_sndlib Add BUILD_INTERFACE to cfile module 2024-04-24 00:41:02 +03:00
dd_vidwin32 Some more CMake white space formatting 2024-04-21 11:46:32 +02:00
ddgr_mac Updated source to reflect the license that this code is released under. 2024-04-20 09:57:49 -06:00
ddio_common Some more CMake white space formatting 2024-04-21 11:46:32 +02:00
ddio_lnx Fix -Wswitch 2024-04-21 20:24:31 +02:00
ddio_mac Add BUILD_INTERFACE to cfile module 2024-04-24 00:41:02 +03:00
ddio_win Some more CMake white space formatting 2024-04-21 11:46:32 +02:00
ddvid_lnx Fix -Wcomment 2024-04-21 20:24:31 +02:00
Descent3 Add BUILD_INTERFACE to cfile module 2024-04-24 00:41:02 +03:00
fix Some more CMake white space formatting 2024-04-21 11:46:32 +02:00
grtext Add BUILD_INTERFACE to cfile module 2024-04-24 00:41:02 +03:00
legacy Remove license from html files 2024-04-20 18:34:49 +02:00
lib Add BUILD_INTERFACE to cfile module 2024-04-24 00:41:02 +03:00
libacm Fix loop in InternalAudioDecoder::Read() 2024-04-21 20:26:02 +02:00
libmve Some more CMake white space formatting 2024-04-21 11:46:32 +02:00
linux Enable console logging if MONO or LOGGER is defined 2024-04-23 09:07:20 -04:00
lnxcontroller Add BUILD_INTERFACE to cfile module 2024-04-24 00:41:02 +03:00
lnxmvelib Some more CMake white space formatting 2024-04-21 11:46:32 +02:00
mac Add BUILD_INTERFACE to cfile module 2024-04-24 00:41:02 +03:00
mac_sndlib Updated source to reflect the license that this code is released under. 2024-04-20 09:57:49 -06:00
manage Add BUILD_INTERFACE to cfile module 2024-04-24 00:41:02 +03:00
md5 Some more CMake white space formatting 2024-04-21 11:46:32 +02:00
mem Some more CMake white space formatting 2024-04-21 11:46:32 +02:00
misc Some more CMake white space formatting 2024-04-21 11:46:32 +02:00
model Some more CMake white space formatting 2024-04-21 11:46:32 +02:00
module Some more CMake white space formatting 2024-04-21 11:46:32 +02:00
movie Some more CMake white space formatting 2024-04-21 11:46:32 +02:00
music Add BUILD_INTERFACE to cfile module 2024-04-24 00:41:02 +03:00
netcon Some more CMake white space formatting 2024-04-21 11:46:32 +02:00
netgames Fix -Wswitch 2024-04-21 20:24:31 +02:00
networking Some more CMake white space formatting 2024-04-21 11:46:32 +02:00
physics Fix -Wtautological-pointer-compare 2024-04-21 20:24:31 +02:00
renderer Some more CMake white space formatting 2024-04-21 11:46:32 +02:00
rtperformance Add BUILD_INTERFACE to cfile module 2024-04-24 00:41:02 +03:00
scripts Ensure STDCALL/STDCALLPTR is only invoked on x86 2024-04-21 22:24:50 -04:00
sndlib Add BUILD_INTERFACE to cfile module 2024-04-24 00:41:02 +03:00
stream_audio Add BUILD_INTERFACE to cfile module 2024-04-24 00:41:02 +03:00
tools HogMaker: don't modify data when printing it 2024-04-22 21:51:49 +02:00
ui Some more CMake white space formatting 2024-04-21 11:46:32 +02:00
unzip Some more CMake white space formatting 2024-04-21 11:46:32 +02:00
vecmat Some more CMake white space formatting 2024-04-21 11:46:32 +02:00
win32 Add BUILD_INTERFACE to cfile module 2024-04-24 00:41:02 +03:00
.clang-format Additional clang-format 2024-04-17 00:25:04 +03:00
.clang-format-ignore Import source of libacm 1.3, integrate it into CMake build 2024-04-21 18:25:45 +02:00
.gitignore Generate HOG files as dependencies for Descent3 2024-04-21 19:15:23 +03:00
Brewfile Add cmake to Brewfile, simplify instructions 2024-04-20 20:28:38 -07:00
CMakeLists.txt Add BUILD_INTERFACE to cfile module 2024-04-24 00:41:02 +03:00
CMakePresets.json fix CMakePresets for Windows, add build presets 2024-04-20 07:47:09 +01:00
gpl.sh Updated source to reflect the license that this code is released under. 2024-04-20 09:57:49 -06:00
gplheader Updated source to reflect the license that this code is released under. 2024-04-20 09:57:49 -06:00
LICENSE Updated source to reflect the license that this code is released under. 2024-04-20 09:57:49 -06:00
README.md Logging updates: 2024-04-23 13:53:00 -04:00

d3 (1)

This is the Descent 3 open source engine, licensed under GPL-3.0. It includes the '1.5' patch written by Kevin Bentley and Jeff Slutter several years ago and brought to a stable condition by the Descent community.

In order to use this, you must provide your own game files. See the Usage section for details.

Version 1.5 Notes

There is no "release" yet. The current milestone is "1.5 Stable", which is meant to more or less be Descent 3 as it might have been if the 1.5 patch had made it to retail years ago. Artifacts can be downloaded from the Actions tab. The milestone needs testing on all platforms. Please report issues when found.

Usage

Purchase Descent 3 from a reputable source and install it, then replace the main binary with the newly build Descent3 binary under ${CMAKE_BINARY_DIR}/Descent3/*/Descent3[.exe]. See your platform below:

Windows

In the install folder, rename main.exe to main.old and take your built Descent3.exe, name it main.exe, and add it to the install folder.

MacOS

Right-click Descent3.app, click Show Package Contents. Back up your Descent3 binary and drop your built Descent3 binary into the install (Contents/MacOS) folder.

Linux

Back up your Descent3 binary and drop your built Descent3 binary into the install folder.

Building

Build steps below assume you have already cloned the repository and entered it locally.

Building - Windows

Requires Visual Studio C++ Tools (cmake and nmake)

cmake --preset win
cmake --build --preset win --config [Debug/Release] -D LOGGER=[ON|OFF]

Building - MacOS

brew bundle install
cmake --preset mac
cmake --build --preset mac --config [Debug/Release] -D LOGGER=[ON|OFF]

Building - Linux

sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y --no-install-recommends ninja-build cmake g++ libsdl1.2-dev libsdl-image1.2-dev libncurses-dev libxext6:i386
cmake --preset linux
cmake --build --preset linux --config [Debug/Release] -D LOGGER=[ON|OFF]

Contributing

Anyone can contribute! We have an active Discord presence at Descent Developer Network. If you are interested in maintaining the project on a regular basis, please contact Kevin Bentley.