Skip to content

polyfox/moon

Folders and files

NameName
Last commit message
Last commit date

Latest commit

2c3bb54 · Jul 14, 2016
Jul 13, 2016
Jul 3, 2015
Dec 6, 2014
Apr 10, 2016
Jul 14, 2016
Jun 29, 2016
Jun 29, 2016
Jan 20, 2016
Jul 3, 2015
Mar 23, 2016
Jun 28, 2015
Jul 19, 2015
May 19, 2015
Jul 13, 2016
Jul 13, 2016
Jul 14, 2016
Jul 14, 2016
Jul 3, 2015
Jul 2, 2015
Jul 14, 2016
Jul 4, 2015
Jul 13, 2014
Jul 14, 2016

Repository files navigation

Moon Moon

Build Status Code Climate Coverity Scan Build Status

Introduction

Moon is a experimental prototyping 2D Game Engine written in C++ and scripted using mruby.

Supported

Currently testing is done linux, moon may not run or even compile on other systems. If you managed to get Moon running on your system, please open a PR and share your changes to get it built.

Requirements

While moon attempts to vendor most of its dependencies, here is a list of things you'll need before getting started.

Dependencies

# building
cmake >= 2.8.12
ruby >= 1.9.2
  yard (for docs)

# runtime
OpenAL
OpenGL

# For dependency docs
doxygen

# for mruby-yaml
yaml

Support

We support graphics cards with OpenGL 2.1 support and the following extensions:

  • GL_ARB_draw_elements_base_vertex
  • GL_ARB_vertex_array_object

Cards that support OpenGL 3.0+ naturally support these extensions, because they are a part of the OpenGL 3.x series. (We basically use a 3.0 context with only the things we need that are widely supported on 2.1 cards so we have wider support).

We will make no effort to support anything less than 2.1.

Building

# if you don't already have moon locally
git clone --recursive https://github.com/polyfox/moon.git

cd moon
# if you don't have bundler installed
gem install bundler
# make sure you have all the nice things moon needs to build
bundle update


# finally execute the build process and watch it go
bundle exec rake build

# alternatively you can do this, which is done by the `rake build`
mkdir -p build
cd build
cmake ..
make

The build process is still clunky and your build may fail.

Updating

You can update Moon at anytime by grabbing the latest commits from master and updating the submodules if needs be:

git pull origin master
# in case we added new submodules, you can initialize them during the update
git submodule update --init

Mruby

Moon is broken into 4 mrbgems, system, graphics, audio, engine. graphics, and audio require system, while engine requires the other 3.

Moon's graphics and audio can be used in your own projects outside of moon.

License

TODO

Problems

Please report any problems by opening an issue.

About

2D game engine, with a mruby scripting system.

Resources

Stars

Watchers

Forks

Packages

No packages published