/crescent

A fighting and beat em up game engine for windows, linux, and macos written in C and uses OpenGL.

Primary LanguageCMIT LicenseMIT

Crescent

windows-msvc-build Actions Status windows-mingw-build Actions Status ubuntu-gcc-build Actions Status macosx-clang-build Actions Status pvs-studio Actions Status package-and-deploy Actions Status

Crescent Engine logo

A work in progress fighting and beat em up game engine for windows, linux, and macos with the core written in C11. To get an idea of what's planned and what's actively in development checkout the project page. There is also documentation (not complete) which can be found here.

Technically any game type will be able to be made with the engine. But these are the primary types the engine will target:

  • Traditional 2D fighting games such as Street Fighter.
  • Beat em up games such as Streets of Rage.
  • 3D Fighters such as Tekken.
  • Platform fighters such as Super Smash Bros.

Tech Stack

Building

Supports windows, linux, and macos builds at the moment. Crescent engine uses cmake to build.

CMake

Crescent officially supports and is actively tested with the following compilers.

Windows:

  • msvc
  • mingw

Linux (Ubuntu):

  • gcc

MacOS:

  • clang

MinGW build

SDL2 needs to be installed manually for mingw builds. Below are instructions on how to do so.

  1. Install MinGW through MSYS2
  2. Update pacman: pacman -Syu
  3. Install the following packages:
    • pacman -S mingw-w64-x86_64-SDL2
    • pacman -S mingw-w64-x86_64-freetype
    • pacman -S mingw-w64-x86_64-python
  4. Run cmake

Note: There is an example of building with mingw in the .github/workflow folder.