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 74eabc48e7 Comment out printf %!s(int64=11) %!d(string=hai) anos
engine 74eabc48e7 Comment out printf %!s(int64=11) %!d(string=hai) anos
exporters 4c6753b2c3 Use pixels for regions in sprites %!s(int64=12) %!d(string=hai) anos
samples 62ce403652 Fix 02.sprites %!s(int64=12) %!d(string=hai) anos
tests b0fd550680 Test generation and crown-tests project %!s(int64=12) %!d(string=hai) anos
third 91f4a8090e Add edtaa3 to third %!s(int64=11) %!d(string=hai) anos
tools 107f1ca376 Export to TGA %!s(int64=11) %!d(string=hai) anos
utils 661d7f641e Update android build %!s(int64=11) %!d(string=hai) anos
.gitignore f44dd556f1 Update .gitignore %!s(int64=11) %!d(string=hai) anos
CMakeLists.txt a6b491ce4f Move stb_image to third %!s(int64=11) %!d(string=hai) anos
COPYING.txt 602f78dda6 Update copyright notice %!s(int64=12) %!d(string=hai) anos
Doxyfile.in 80c358ac7f Use version from CMakeLists.txt when generating documentation %!s(int64=12) %!d(string=hai) anos
README.md e156aa1ed0 Update README.md %!s(int64=11) %!d(string=hai) anos

README.md

Lightweight, cross-platform game engine that tries to Keep It Simple.

##What is it?

Lightweight cross-platform game engine. You can write games in Lua and/or C++ for Linux, Android and Windows with it.

##Y u do dis, there's UE4 for 19$ a month.

Because it's fun.

##Dependencies

Crown Engine depends on a number of third-party libraries. Some of them, like luajit, are included in this SDK, so you do not need to worry too much. However, some other libraries are not included due to their excessive size or for some other particular reasons. In order to be able to successfully build the engine, you have to install and/or properly configure the following packages:

Linux:

  • zlib
  • GLEW
  • Xlib
  • Xrandr
  • nVidia PhysX 3.3.0+

Android:

  • Android NDK and SDK
  • nVidia PhysX 3.3.0+

Windows:

  • zlib
  • GLEW
  • nVidia PhysX 3.3.0+

##Building

The steps required for building the engine in a default and pretty safe manner are summarized below for each supported platform. All the commands and/or operations must be performed in the root directory of the project (i.e. the same as this file):

Linux:

$ mkdir build
$ cd build
$ cmake .. -DCMAKE_INSTALL_PREFIX=<install-path> -DCROWN_BUILD=<read-below>
$ make install

'CROWN_BUILD' valid values are:

  • linux-debug-32
  • linux-development-32
  • linux-release-32
  • linux-debug-64
  • linux-development-64
  • linux-release-64

Windows:

Create a folder named 'build'
Open a terminal and:
cd build
cmake.exe .. -DCMAKE_INSTALL_PREFIX=<install-path> -DCROWN_BUILD=<read-below>
Open the generated Visual Studio solution and build/install from there

'CROWN_BUILD' valid values are:

  • windows-debug-32
  • windows-development-32
  • windows-release-32
  • windows-debug-64
  • windows-development-64
  • windows-release-64

Android:

$ cd utils
$ ruby crown-android.rb --target <android-target> --name <project-name> --path <project-path> [--res <res-path>]

You can also use the GUI front-end of CMake which can, less or more, simplify the overall 'complexity' of building from the terminal.

##System requirements

In order to be able to run the engine, no particular configurations are needed:

Linux:

  • 32/64-bit distribution
  • x86/x86_64 CPU
  • The latest driver for your GPU (OpenGL >= 2.1)

Windows:

  • 64-bit Windows version (Windows 7+)
  • x86_64 CPU
  • The latest driver for your GPU (OpenGL >= 2.1)

Android:

  • Android 2.3.3+
  • ARMv7 CPU
  • OpenGL|ES 2 compatible GPU

##Examples

When running a sample you current directory has to be <install-path>/bin. To run a sample:

$ ./crown-linux-debug-64 --source-dir <full-sample-path> --bundle-dir <full-destination-path> --compile --continue

###01.hello-world

Engine initialization and shutdown.