README.md 1.88 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](/LICENSE)

## PhaseShifter | Stealth is optional for this mission
C++-GDW-Projekt vom SS 1019

GDD: <https://docs.google.com/document/d/1KmGQNSsxApRNjwxsvaBgfI01kEvXilgodRMOtaKsUoo>

Engine Documentation: <https://gitlab.com/lowkey42/mirrage/wikis/Documentation>


### Dependencies
Required:
- CMake >= 3.9
- Vulkan + Vulkan-HPP >= 1.1.80
- GLSLC
- git LFS


### Supported Compilers
- GCC >= 8
- Clang >= 6
- MSVC >= 19.14 (Visual Studio 2017 15.7)


### Build from Source
- git lfs install
- git clone --recurse-submodules git@gitlab.fsi.hochschule-trier.de:GameDevWeek/sommersemester-2019/cpp/phase_shifter.git
- mkdir phase_shifter_build
- cd phase_shifter_build
- cmake ../phase_shifter
- cmake --build .

The project can be further configured by setting the following CMake-Properties (-DPROP=ON/OFF):
- MIRRAGE_BUILD_DEMO: Build the demo application (Default: ON when building the engine directly, OFF when including it from another CMake-Project)
- MIRRAGE_BUILD_MESH_CONVERTER: Also build the mesh converter that can be used to converter models into the engine specific data format (Default: OFF)
- MIRRAGE_ENABLE_BACKWARD: Enable stacktraces (Default: ON on Linux, OFF on Windows because the underlying library backward-cpp doesn't currently support Windows)
- MIRRAGE_ENABLE_CLANG_FORMAT: Includes an additional clangformat target, that can be used to automatically format all source files in the project
- MIRRAGE_ENABLE_LTO: Activates link time optimizations on gcc/clang (Default: OFF)
- MIRRAGE_SAN: Build with clang sanatizers (address, integer, undefined and address-use-after-scope) (Default: OFF)
- MIRRAGE_ENABLE_COTIRE: Enables automatic precompiled headers through cotire
- MIRRAGE_USE_LIBCPP: Uses libc++ instead of libstdc++ when compiling with clang (Default: ON)
- MIRRAGE_OPTIMIZE_NATIVE: Compile with -march=native (Default: OFF)