No description
Find a file
2025-04-18 12:11:58 -04:00
.vscode Added framebuffers for world and hud for postprocessing. Also fixed a nagging NDC issue 2025-02-24 21:30:48 -05:00
Resources improved support for different resolutions + general documentation and cleanup 2025-04-14 16:04:43 -04:00
YuppleMayham Added readme and various comments and general cleanup 2025-04-17 11:30:11 -04:00
.gitattributes Add .gitattributes and .gitignore. 2024-06-21 16:59:02 -04:00
.gitignore Added readme and various comments and general cleanup 2025-04-17 11:30:11 -04:00
CMakeLists.txt Added spatial sound effects, fixed a bunch of memory leaks 2025-04-04 13:34:27 -04:00
CMakePresets.json Added tracy for debugging. further optimizations 2025-02-05 22:03:11 -05:00
README.md fixed broken screenshot link 2025-04-17 11:48:26 -04:00

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