Simple2DEngine

Simple2DEngine is a simple game engine based on SFML and written in C++.

Build Status

Linux GCC Linux Clang MacOS Windows
Linux GCC Linux Clang MacOS Windows

Documentation

Documentation status

Documentation Status

You can read online documentation here.

How to build documentation

First of all you need exhale python package that can be install by

pip install exhale

In CMake configuration step set BUILD_DOCS to YES. Documentation will be build by default and will be in docs folder.

mkdir build
cd build
cmake -DBUILD_DOCS=YES ..

If you want to install documentation you can use this after doc building.

cmake --build . --target install

Directory for installation can be set by -DCMAKE_INSTALL_PREFIX variable.

Building instructions

Prerequisites

  • CMake 3.2 or newer
  • SFML 2.5.1 or newer
  • Compiler with C++14 support

Targets

  • Build
    • all
    • clean
    • install - install binaries and docs (if builded) into CMAKE_INSTALL_PREFIX
    • simple2dengine - build Simple2DEngine libraries
  • Testing (if BUILD_UNITTESTS set to YES)
    • unit - build and run unit tests only
    • unitVerbose - build and run unit tests only with verbose
  • Miscellaneous
    • doc - build documentation
  • External
    • external-Catch-update - update Catch (Unit Testing library)

CMake Variables

  • -DCMAKE_INSTALL_PREFIX - location for installation
  • -DCMAKE_BUILD_TYPE - for build type
  • -DBUILD_UNITTESTS - boolean for Unit Tests building
  • -DBUILD_DOCS - boolean for documentation building
  • -DBUILD_DEMO - boolean for demo building

Build example

Debug build which will install itself into default path (build/dist).

mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE="Debug"
cmake --build .
cmake --build . --target install

Release build which will install itself into install directory in project root dir.

mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX="../install" -DCMAKE_BUILD_TYPE="Release"
cmake --build .
cmake --build . --target install

License

License

Simple2DEngine uses a BSD 3-clause license.