Skip to content

Lightweight, cross-platform, 2D game engine | ECS; Lua Console; Physics; Tile based

License

Notifications You must be signed in to change notification settings

JerboaBurrow/Hop

Repository files navigation

Hop

A lightweight 2D game engine, in C++ with embedded Lua

Features

  • Free, MIT open sourced
  • Use as a standalone (GLFW based) engine or as a drop in component (e.g. with SFML)
  • Entity component system (ECS) based
  • Rigid and soft body physics (Discrete element method)
  • OpenGL rendering (provided by jGL, Vulkan is a WIP)
  • Perlin (marching squares) and Tile map, editable tile based worlds
  • Lua console, interoperating with the ECS, physics, and rendering systems

Setup

  • clone, and init the submodules (you can use submodules.sh)
  • the build.sh can be used to build

OSS Dependencies and Licenses

  • Freetype is licensed under the The FreeType Project LICENSE
  • GLEW is licensed under aModified BSD License, the Mesa 3-D License (MIT) and the Khronos License (MIT).
  • GLFW is licensed under the zlib/libpng
  • GLM is licensed under the MIT License (but also, no bunnies have been made unhappy)
  • Lua is licensed under the MIT license
  • Miniaudio is licensed under the MIT-0 license
  • stduuid is licensed under the MIT license
  • vorbis and ogg is licensed under a BSD license
  • zlib is licensed under the zlib license

We thank: David Turner, Robert Wilhelm, and Werner Lemberg (Freetype), Milan Ikits <milan ikits[]ieee org>, Marcelo E. Magallon <mmagallo[]debian org>, and Lev Povalahev Brian Paul, The Khronos Group Inc (GLEW), Marcus Geelnard and Camilla Löwy (GLFW), G-Truc Creation (GLM), Lua.org, PUC-Rio (Lua), David Reid (Miniaudio), Marius Bancila https://github.com/mariusbancila/stduuid#MIT-1-ov-file (stduuid), Xiph.org Foundation (vorbis, ogg), and Jean-loup Gailly and Mark Adler (zlib).