/Diggler

A game engine for cube games

Primary LanguageCGNU Affero General Public License v3.0AGPL-3.0

Diggler

A game of cubes and the like.

Obtaining source

This repository uses git submodules, do not download it using the "Download ZIP" option!

Instead, install git and your machine, and

git clone https://github.com/ElementW/Diggler.git
cd Diggler
git submodule update --init

Compiling

Diggler uses CMake to generate its build files. If you have an IDE that supports CMake, import the project. If you want to compile it using the command line:

mkdir build
cd build
cmake ..
make -j$(nproc)

Important note: Diggler does not suport in-source builds, i.e. running CMake in the top level directory, due to 1. the impossibility to have multiple builds that way, and 2. because of the frequent build structure fuckery it causes. Make sure to configure your IDE/run CMake to have the build directory elsewhere. Disregarding this will have CMake bail out instantly as well as remind you of this one more time.

Dependencies

Diggler is written in C++14, so you need GCC 5/clang 3.4 or more.

You need GLM, OpenAL, OpenGL (ES 2.0), libepoxy, glfw3, LuaJIT, sqlite3 and libsodium.

Linux

You should already have OpenGL available thanks to Mesa or proprietary drivers.

Arch: pacman -S glm openal libepoxy glfw luajit sqlite libsodium

Debian (Jessie w/ testing, or up) & derivatives: apt-get install libglm-dev libopenal-dev libepoxy-dev libglfw3-dev libx{i,randr}-dev libluajit-5.1-dev libsqlite3-dev libsodium-dev

Fedora (tested on F24): dnf install glm-devel openal-soft-devel libepoxy-devel glfw-devel luajit-devel sqlite-devel libsodium-devel