mirror of
https://github.com/nunuhara/xsystem4.git
synced 2026-09-30 02:48:14 +03:00
fdd0af8dcf6fdc276c54038d8e87a58eb63acc79
This fixes broken shadow rendering e.g. when Nacht climbs a ladder. Now update_bones() calculates the instance's bounding sphere which is the minimum sphere containing the AABB of current bone coordinates. This corresponds to the sphere that is displayed when calling SetInstanceDebugDrawShadowVolume on the original ReignEngine.dll.
xsystem4
xsystem4 is an implementation of AliceSoft's System 4 game engine for unix-like operating systems.
Compatiblity
See the game compatibility table for a list of games that can be played on xsystem4.
Building
First install the dependencies (corresponding Debian package in parentheses):
- chibi-scheme [optional, for debugger]
- bison (bison)
- cglm (libcglm-dev) [optional, fetched by meson if not available]
- flex (flex)
- freetype (libfreetype-dev)
- glew (libglew-dev)
- meson (meson)
- libffi (libffi-dev)
- libpng (libpng-dev)
- libsndfile (libsndfile-dev)
- libturbojpeg (libturbojpeg0-dev)
- libwebp (libwebp-dev)
- SDL2 (libsdl2-dev)
- zlib (zlib1g-dev)
Then fetch the git submodules,
git submodule init
git submodule update
(Alternatively, pass --recurse-submodules when cloning this repository)
Then build the xsystem4 executable with meson,
mkdir build
meson build
ninja -C build
Finally install it to your system (optional),
ninja -C build install
Running
You can run a game by passing the path to its game directory to the xsystem4 executable,
build/src/xsystem4 /path/to/game_directory
Alternatively, run xsystem4 from within the game directory,
cd /path/to/game_directory
xsystem4
Languages
C
96.5%
GLSL
2.7%
Meson
0.3%
CMake
0.2%
Scheme
0.2%