blob: 572b019e9ea1f3c93402880a38ab0d727e636eda (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
BOWSHOCK
# CHANGELOG
Read: "CHANGELOG.txt"
# COMPILATION
Bowshock uses CMake as its build system. The standard option CMAKE_-
BUILD_TYPE may be set to either "Release" or "Debug", depending on the
build type.
The program is written in C2x, and a conforming compiler is therefore
required. It has been tested to work with GCC 12.2 and Clang 15.0, but
the option BOW_C2X_COMPATIBILITY may have to be set to "true" when
invoking CMake.
Before compilation, an appropriate GLAD loader must be downloaded from
a web instance. I use the one on dav1d.de, with the following settings:
<https://glad.dav1d.de/#language=c&specification=gl&api=gl%3D4.0&api=gles1%3Dnone&api=gles2%3Dnone&api=glsc2%3Dnone&profile=core&loader=on>
The script "extractGlad.sh" will extract "glad.zip" (or any other ar-
chive - if specified) to "glad". It also copies a CMAKE lists file to
the directory, and CMake will automatically include this and build
GLAD.
Before running - however - the data directory must be installed. This
can be done via the installation script "install.sh":
./install.sh data [data directory]
## DEVELOPMENT
The commands I use for development are:
clear && \
rm -fr build && \
rm -fr bindir && \
rm -fr datdir && \
./validateShaders.py && \
./extractGlad.sh && \
cmake -Bbuild -DBOW_DATA_DIRECTORY="${PWD}/datdir" -DCMAKE_BUILD_TYPE=Debug . && \
cmake --build build && \
./install.sh data "${PWD}/datdir" && \
build/bowshock/bowshock --skip
## SHADER VALIDATION
The shaders at bowshock/shader may be validated using the Python-
script "validateShaders.py". If the shaders contain errors, and these
are not fixed before installation, the program will fail to compile
them during run-time, but the errors will not be diagnosed.
## INSTALLATION
The script "install.sh" will install the executable, the assets, the
shaders... to the specified directories:
./install.sh [build directory] [binary directory] [data directory]
# CREDITS
Read: "CREDITS.txt"
|