Modurale

Build Status

Modular real time engine for computer graphics.

Requirements

Modurale is written in cross-platform C++ and should compile in Windows, Linux and Mac environments. Currently it has been tested on Windows and Linux.

Instructions

# Clone the repository and navigate into its root folder.
git clone git@github.com:danijar/modurale.git
cd modurale

# Install the indirect dependencies. Use the setup script if available for
# your platform. Otherwise, please see section Indirect Dependencies.
chmod +x tool/setup-<platform>.sh
tool/setup-<platform>.sh

# Build the projects. They will download and build dependencies as well. The
# step can take a couple of minutes.
cd build
cmake ../project/
cmake --build .
cd ..

# Optionally, run the tests.
install/modurale/bin/modurale-test

# Run the example application.
install/game/bin/game

Direct dependencies

The following libraries are used in Modurale. Because of the automated build system there is no need to manually install them though.

Library Version Description
SFML 2.1 Simple and fast multimedia library.
Boost 1.58.0 Large collection of multi-purpose libraries.
Catch 1.2.1 Multi-paradigm automated test framework.
SQLite 3.8.7 Serverless transactional SQL database.
Assimp 3.1.1 Import library for various 3D model formats.
GLEW 1.12.0 OpenGL run-time extension loader.

Indirect dependencies

Since libraries above have dependencies themselves, the following libraries must be available on the system. There are setup scripts available for some platforms inside the tool/ directory.

Library Arch Ubuntu
FreeType freetype2 libfreetype6-dev
JPEG libjpeg-turbo libjpeg-dev
OpenAL openal libopenal-dev
OpenGL Utility glu libglu1-mesa-dev
Sound Files libsndfile libsndfile1-dev
Udev systemd libudev-dev
X Input libxi
X Utility libxmu
X11 Client libx11-dev
XRandR libxrandr libxrandr-dev