Xavier Del Campo Romero
2c45379403
There were several reasons behind splitting the old SVN monorepo in two Git repositories: - It made packaging for GNU/Linux distributions easier, since speed-dreams-data would be often considered as a separate, portable package, as typically done in other video games. For example, 0ad and 0ad-data, cube2 and cube2-data, and so on. - It reduced the repository size for the engine repository as much as possible, which is often desirable for CI/CD runs and developers with poor connectivity and/or who only want to perform quick changes to the source code. After all, speed-dreams-data is around 294 MiB as of the time of this writing, whereas speed-dreams-code is around 36 MiB. However, there are situations where having both repositories together is desirable or even mandatory: - In the case of Windows builds, both repositories must be configured by the same top-level CMakeLists.txt so that files and targets from both repositories are installed simultaneously, and therefore packaged into the NSIS-based installers. Otherwise, it would require users to run two separate installers, one for speed-dreams-code and another for speed-dreams-data. - Having a submodule makes which version from speed-dreams-data is compatible with speed-dreams-code clearer. - Not having a submodule required developers to both fetch the speed-dreams-data repository and install it, which means double disk space usage. - Some users might still prefer to work on a monorepo and not have to worry about installing speed-dreams-data beforehand. |
||
---|---|---|
.forgejo/workflows | ||
cmake | ||
cpack | ||
doc | ||
packaging | ||
speed-dreams-data@9749171cef | ||
src | ||
.gitignore | ||
.gitmodules | ||
CHANGES.txt | ||
CMakeLists.txt | ||
INSTALL.txt | ||
LICENSE | ||
README.md | ||
TODO.txt | ||
unix64.cppcheck | ||
win64.cppcheck |
Speed Dreams
Speed Dreams is a free and open source motorsport simulator. Originally a fork of the TORCS project, it has evolved into a higher level of maturity, featuring realistic physics with tens of high-quality cars and tracks to choose from.
This repository only contains the engine source code. End users are expected to download the pre-built packages listed below.
The assets repository is located on https://forge.a-lec.org/speed-dreams/speed-dreams-data/
Pre-built packages
Speed Dreams binaries are available for the following platforms:
- Debian/Ubuntu (TODO)
- Microsoft Windows (TODO)
Building from source
Speed Dreams can be built from source using the conventional build process in CMake projects:
cmake -B build
cmake --build build/ # Optionally, add -j8 or any other number for faster builds
This assumes the
speed-dreams-data
package is already installed on a well-known location. If not, use the
CMAKE_PREFIX_PATH
variable to indicate CMake where to locate an installed version of the
speed-dreams-data
package:
cmake -B build -DCMAKE_PREFIX_PATH=<path-to-speed-dreams-data>
And then build the project as usual.
If the
speed-dreams-data
package is not found, the game should still be able to build, but it would not be able to run.
Dependencies
Debian/Ubuntu
sudo apt install git cmake build-essential libopenscenegraph-dev libcurl4-gnutls-dev libsdl2-dev libsdl2-mixer-dev librhash-dev libenet-dev libpng-dev libjpeg-dev zlib1g-dev libminizip-dev libopenal-dev libplib-dev libexpat1-dev libcjson-dev openjdk-17-jdk openjdk-17-jre
The version for the
openjdk-*
packages might change among distributions.
License
By default, Speed Dreams code is licensed under the GPLv2-or-later license,
as specified by the LICENSE
file, whereas non-functional data
is licensed under the Free Art License by default.
However, some sections of the code and some other assets are distributed under various free (as in freedom) licenses. Please read their license files located in their respective directories for further reference.
Trademark disclaimer
Windows is a registered trademark of Microsoft Corporation.
Ubuntu is a registered trademark of Canonical Ltd.