/octopus_engine

A cross-platform 2D game engine used in Octopus City Blues.

Primary LanguageC++OtherNOASSERTION

Octopus Engine

A cross-platform 2D game engine used in Octopus City Blues. Octopus Engine is an OpenGL engine written in C++17 and originally based on the XD framework. It was developed to meet the needs of Octopus City Blues in particular, but it might be useful for other types of games.

Features

  • Partial support for TMX maps (Custom Properties).
  • Lua scripting features (Reference - LuaLS Annotations).
  • A flexible XML sprite format. See SpriteEditor.
  • Tile-based collision detection.
  • Customizable gamepad and keyboard input.
  • Player movement and interaction with various object types.
  • HarfBuzz complex font-shaping support.
  • Support for custom GLSL shaders.
  • A Qt-based editor.

License

See LICENSE.text file.

Building

Dependencies:

There are project files for Visual Studio 2022. You'll need to download and build the dependencies and make sure they're visible for VS.

On macOS or Linux use CMake 3.10 or later. For Linux in particular, you need g++ 7 or later. See linux_build.md for more details.