Home

Awesome

Quiver

A cross-platform pseudo-3D game engine written in C++ using SFML and Box2D

Important Note!

Quiver is far from finished. It's not even ready for its first 'release' yet. You definitely shouldn't seriously attempt to make a game with it.

Getting Started

You will need:

Clone the Quiver repository.

Run Premake in the root directory (where you'll find premake5.lua), specifying where to find the SFML header and library files using the --sfmlinc and --sfmllib parameters. In this example, Quiver has been cloned to C:/Dev/Quiver, the correct version of SFML 2.4.2 has been unzipped to C:/SFML-2.4.2, and I am generating a Visual Studio 2017 workspace:

PS C:\Dev\Quiver> premake5 vs2017 --sfmlinc=C:/SFML-2.4.2/include/ --sfmllib=C:/SFML-2.4.2/lib/

Premake generates the Visual Studio 2017 files, sticking them in the PremakeGenerated folder:

Generated PremakeGenerated/Quiver.sln...
Generated PremakeGenerated/Box2D.vcxproj...
Generated PremakeGenerated/Box2D.vcxproj.user...
Generated PremakeGenerated/Box2D.vcxproj.filters...
Generated PremakeGenerated/ImGui-SFML.vcxproj...
Generated PremakeGenerated/ImGui-SFML.vcxproj.user...
Generated PremakeGenerated/Quiver.vcxproj...
Generated PremakeGenerated/Quiver.vcxproj.user...
Generated PremakeGenerated/Quiver.vcxproj.filters...
Generated PremakeGenerated/QuiverTests.vcxproj...
Generated PremakeGenerated/QuiverTests.vcxproj.user...
Generated PremakeGenerated/QuiverApp.vcxproj...
Generated PremakeGenerated/QuiverApp.vcxproj.user...

You should now be able to build Quiver using Visual Studio. Hopefully it's possible to adapt these instructions to different build systems and platforms!

Overview

The workspace is divided into a few projects:

Contributing

As mentioned before, attempting to make a game with Quiver would be folly. That doesn't mean you shouldn't muck about with it. Feel free to poke me with questions, feature requests or bugs using issues.

Projects