A complete and cross-platform game engine designed for flexibility, performance, and fast-iterations.

url: www.crownengine.org

Topics:
#windows #linux #gamedev #lua #game-engine #data-oriented-design #data-driven #game-development #3d #2d

Daniele Bartolini ecb30eef0a Fix code style 8 rokov pred
3rdparty 0b8fd6eb6b Update bgfx, bimg and bx 8 rokov pred
docs 3553b3d77c Add DebugLine::add_arc() 8 rokov pred
exporters 7dc7e1e350 Update copyright notice 9 rokov pred
samples 5f933cfcf8 Fix orthographic camera position 8 rokov pred
scripts 45c31a1374 Cleanup 8 rokov pred
src ecb30eef0a Fix code style 8 rokov pred
tools 788282059a Attempt to replace IDs with human-readable names when logging to ConsoleView 8 rokov pred
.appveyor.yml 511b6f73ba Do not build Level Editor with vs* 9 rokov pred
.editorconfig 9d088e5e59 Update .editorconfig 9 rokov pred
.gitattributes 56921c5216 Update .gitattributes 9 rokov pred
.gitignore da69765ac3 Cleanup 9 rokov pred
.travis.yml 2ef6dc249d Simplify build folders 9 rokov pred
LICENSE 7dc7e1e350 Update copyright notice 9 rokov pred
README.md beedfaa8a5 Update README.md 8 rokov pred
makefile 45c31a1374 Cleanup 8 rokov pred

README.md

The flexible game engine. Build Status Build status

Crown is a general purpose data-driven game engine, written from scratch in orthodox C++ with a minimalistic and data-oriented design philosophy in mind.

It is loosely inspired by Bitsquid (now Stingray) engine and its design principles; the current Lua API is similar to that of Bitsquid but this engine is not meant to be its clone nor to be API compatible with it.

Documentation

Download (Stable)

Linux (Tarball)

crown-0.0.26-linux-x64.tar.gz

ArchLinux

$ yaourt -S pepper

Screenshots

Level Editor

level-editor

00-empty

Engine initialization and shutdown.

01-physics

01-physics

Building

Prerequisites

Android

Android NDK (https://developer.android.com/tools/sdk/ndk/index.html)

$ export ANDROID_NDK_ROOT=<path/to/android_ndk>
$ export ANDROID_NDK_ARM=<path/to/android_ndk_arm>

Linux (Ubuntu >= 16.04)

$ sudo add-apt-repository ppa:vala-team
$ sudo apt-get install libgtk-3-dev valac libgee-0.8-dev
$ sudo apt-get install mesa-common-dev libgl1-mesa-dev libpulse-dev libxrandr-dev

Windows

MSYS2 (http://www.msys2.org)

Building and running Level Editor

$ make tools-linux-release64
$ cd build/linux64/bin
$ ./level-editor-release ../../../samples/01-physics

Contact

Daniele Bartolini (@aa_dani_bart)
Project page: https://github.com/taylor001/crown

Contributors

In chronological order.

Daniele Bartolini (@taylor001)
Simone Boscaratto (@Xed89)
Michele Rossi (@mikymod)
Michela Iacchelli - Pepper logo.

License

Copyright (c) 2012-2017 Daniele Bartolini and individual contributors.

Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation
files (the "Software"), to deal in the Software without
restriction, including without limitation the rights to use,
copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following
conditions:

The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.