Ryu Engine is an experimentation playground for making game engines
- C++ 23
- Xmake build system
Note
- Ryu Engine only builds on Windows x64 and has only been tested with MSVC/Visual Studio 2022
- All xmake commands are run from the root folder (of the repository)
- To build Ryu you need to ensure you have the xmake build system installed and added to you path.
To build the default projects of Ryu (and their dependencies) simply run xmake.
Additionally provided .bat
scripts can be run (from repo root directory) in the Scripts folder
xmake
By default xmake will build Ryu in debug
configuration. This can be changed by running the following command before running any build command. Optionally provided Scripts/*.bat
can be used.
xmake f -m <debug|release>
To build a specific project run the build command with the project name
xmake build <project name>
IDE files for are generated with the help of xmake. To see how to generate IDE specific project files using xmake click here.
Documentation can be generated (using doxygen). Simply run GenerateDocs.bat from the repo root folder.
Documentation will be generated in the ./build/documentation/
folder
Ryu is architected in a very modular way which makes it easy to extend and modify.
To see a list of all the projects (referred to as targets by xmake), you can run the following command
xmake show -l targets
- All of the targets build into a static library. Except the
RyuEditor
andRyuTestbench
. They build into executables. RyuCore
is a phony target which will build all core targetsRyuEngine
is a special static library where it merge archives all dependent static libraries into a singleRyuEngine.lib
RyuTestbench
is a test 'game' project where current engine functionality is being tested. This project may or may not always compile
The packages can be seen in the Packages.lua file
- fmt
- DirectX-Headers
- imgui
- libassert
- uuid_v4
- entt
- Angelscript (addons included in the repo)
To run the automated tests that check project compilation state. Execute the following command
xmake test