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 aa2d8ec7c2 Switch to native activity 11 years ago
engine aa2d8ec7c2 Switch to native activity 11 years ago
exporters 4c6753b2c3 Use pixels for regions in sprites 12 years ago
samples 62ce403652 Fix 02.sprites 12 years ago
tests b0fd550680 Test generation and crown-tests project 12 years ago
third 8c4d8d5088 Move Json.NET to TL third 11 years ago
tools 8c4d8d5088 Move Json.NET to TL third 11 years ago
utils aa2d8ec7c2 Switch to native activity 11 years ago
.gitignore f44dd556f1 Update .gitignore 11 years ago
CMakeLists.txt a6b491ce4f Move stb_image to third 11 years ago
COPYING.txt 602f78dda6 Update copyright notice 12 years ago
Doxyfile.in 80c358ac7f Use version from CMakeLists.txt when generating documentation 12 years ago
README.md e156aa1ed0 Update README.md 11 years ago

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.