yupplemayham/README.md

1.5 KiB

Personal Game Engine

A modular, event driven 2D game engine, built from scratch to learn engine architecture and low-level graphics programming.

Supports sprite-based animation, Lua scripting, XML-driven definitions and Tiled map creation.


Features

  • Event-based animation and sound system
  • Animation and tile-sets supported by texture atlases
  • Map creation and collision map support in Tiled map editor
  • Component-based entity structure
  • Basic audio engine integration via OpenAL (XML definitions)
  • Basic physics system
  • Lua scripted enemy and weapon behavior

Current Status

Work in Progress - This project is still under active development, I am currently cleaning up my resource management system for better ease of use for future users of this engine.


Dependencies

  • SDL2, SDL2_image
  • OpenGL 3.3
  • sol2 (Lua binding)
  • TinyXML2
  • OpenAL
  • Freetype
  • GLM
  • pkg-config
  • CMake

Build Instructions

  1. Clone the repo (git.wienermeister.net/snakert12345/yupplemayham.git)
  2. Install list of dependencies. Ensure they're available via pkg-config
  3. Build with CMake
git clone https://git.wienermeister.net/snakert12345/yupplemayham.git
cd yupplemayham
mkdir build && cd build
cmake ..
make

Screenshot

Screenshot


Roadmap

  • Save/Load system
  • Modular and scalable menu system
  • In-game dialog and conversation systems
  • Expanded combat system