A game library and wrapper around SFML
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Macoy Madson dbf8ce175a Switch to imgui docking branch 4 月之前
3rdParty Added OpenSimplex noise (implementation by Arthur Tombs) and noise wrapper to base 5 年之前
animation Initial commit 5 年之前
collision Initial commit 5 年之前
dataStructures Moved some useful code from Horizon into Base; made readme look prettier 5 年之前
dependencies Switch to imgui docking branch 4 月之前
docs Added Doxyfile for Doxygen generation; maybe other small stuff 5 年之前
ept Fixed strange bug in eptParser 5 年之前
example Added example project, updated readme 4 月之前
graphics Removed verbose CMake, fixed warnings, add polling 8 月之前
input Formatted input, added tap repeat code from 7drl2018 1 年之前
math Changed manhattan function to abs rather than square 5 年之前
network Fix Network typo, don't build pseudotarget 2 年之前
noise Added OpenSimplex noise (implementation by Arthur Tombs) and noise wrapper to base 5 年之前
profiler Initial commit 5 年之前
sound Initial commit 5 年之前
tests Added minimal dependencies to compile SFML 8 月之前
tileMap Initial commit 5 年之前
tiledImporter Initial commit 5 年之前
timer Initial commit 5 年之前
tools Removed crusty files 4 月之前
.clang-format Added dependencies, clang format 9 月之前
.gitignore Added example project, updated readme 4 月之前
.gitmodules Added dependencies, clang format 9 月之前
BuildDependencies_Debug.sh Removed verbose CMake, fixed warnings, add polling 8 月之前
BuildDependencies_Release.sh Removed verbose CMake, fixed warnings, add polling 8 月之前
Build_Debug.sh Added debug build .so selection for SFML 9 月之前
Build_Release.sh Added example project, updated readme 4 月之前
Jamfile Cleaned up Jamfile 4 月之前
Jamrules More SFML stuff 8 月之前
LICENSE Initial commit 5 年之前
ReadMe.org Fixed ReadMe.org repo URL 4 月之前
pseudotarget.cpp Added minimal Jam support 2 年之前

ReadMe.org

A simple game library and abstraction layer. It uses SFML to provide most functionality, then groups it together with other tools.

Setup

Clone repository

Clone and init submodules for dependencies:

git clone --recurse-submodules https://github.com/makuto/base2.0

If you didn't do submodules, run this:

git submodule update --init --recursive

Set up build system

Jam is used to build the project. Install Jam:

sudo apt install jam

Build dependencies

Currently, SFML relies on system installs for its dependencies:

sudo apt install libopenal-dev libvorbis-dev libflac-dev libglew

Build the rest of the dependencies from source:

./BuildDependencies_Release.sh

Use the *_Debug.sh scripts if you want debug symbols. Note that you need to use Debug/Release scripts in every case, otherwise the libraries will fail to link.

Build example project

The example project is a good starting point for a new project. Build it like so:

cd example
./Build_Release.sh

Run ./exampleBase to see the project.