my eecs 498 game engine
[wip] a fast, cross-platform distributable 2D game engine. with c++20, perf engineering, box2d, sdl, lua middleware and modular ECS.
Having all requirements set, here you can find how to quickly build and run the application.
Usually available build modes are Debug, Release, and RelWithDebInfo.
To run a debug build:
cmake -GNinja -DCMAKE_BUILD_TYPE=Debug -B build/debug
cmake --build build/debugTo run a release build:
cmake -GNinja -DCMAKE_BUILD_TYPE=Release -B build/release
cmake --build build/releaseOn macOS Xcode should be used as generator via -GXcode. For example creating a release build with XCode.
# Using Xcode
cmake -GXcode -DCMAKE_BUILD_TYPE=Release -B build/xcode
cmake --build build/xcodeWhen not running through an IDE like CLion, the built application can be run by directly executing the generated binary.
To run a debug build:
./build/debug/src/app/App.app/Contents/MacOS/AppTo run a release build:
./build/release/src/app/App.app/Contents/MacOS/AppTo run a debug build created with Xcode:
./build/xcode/src/app/Debug/App.app/Contents/MacOS/AppTo run a release build created with Xcode:
./build/xcode/src/app/Release/App.app/Contents/MacOS/AppTo run a debug build:
build/debug/src/app/App.exeTo run a release build:
build/release/src/app/App.exeTo run a debug build:
./build/debug/src/app/AppTo run a release build:
./build/release/src/app/AppTo bundle the application and create a distribution package CPack is used. Before executing CPack a release build needs to be generated.
cpack --config build/release/CPackConfig.cmakeOn any generated build tests can be executed by using CTest, e.g. a Debug build:
ctest --test-dir build/debugMartin Fieber's C++20 project template with SDL2 and imgui. Lot of project installation, setup, distribution docs come from there.
Also, open source font Manrope.