Chewman Vulkan Save

Chewman is a 3D pacman-style game written in C++ using Vulkan SDK and SDL

Project README

Chewman Vulkan

Language Version Build Status Codacy Badge Coverity

A cross-platform 3D Pacman-style game written in pure Vulkan and C++, with minimal dependencies. Main dependencies: SDL2 (windows initialization and controls) and assimp (3D assets loading).

Desktop build also uses OpenAL and Ogg Vorbis for audio, and cppfs for filesystem functions (Android build has all those functions in Android SDK).

Game is currently released on Android Play Store (ver. 1.1). iOS version is in progress.

Screenshot

Screenshot Screenshot Screenshot

Technology

Game is using Vulkan API/SDK for graphics, SDL for windows creation and controls, Assimp library for 3d models importing and some other small libraries like glm, cppfs, stb, utf8-cpp and rapidjson. Also it uses Vulkan Memory Allocator to optimize allocations. Common Vulkan bootstrapping and scene management files are separated in the SVE folder - "Simple Vulkan Engine".

SVE is a small game graphics engine, developed with the game. It is used for Vulkan initialization and processing, and some common game features - scene management, resources loader, materials, lights, particles and shaders management etc. SVE will probably move to a separate repository after the game is finished.

Main features of the game (and SVE):

  • Vulkan rendering
  • Animation from loaded 3D assets
  • Water rendering (reflection/refraction)
  • Forward shading, point, direct and line lights
  • Shadow maps, cascade shadow maps, point light shadows
  • Instancing
  • Particle system based on compute and geometry shaders
  • Overlays, fonts and GUI rendering
  • Post-effects (like bloom, grayscale)

Game description

Game design is inspired by original Pacman game, but in a dark fantasy world.

Game protagonist - Chewman - is a demon, who is hunting for treasure and lives of innocent humans in the Maze. His enemies are Holy Order (knights, priests, nuns and angels) and other treasure hunters - witches and demons. Each enemy has some features and weaknesses. There are several power-ups on each map, like speed, move-through-walls, freeze enemies etc. Also there are teleports and traps like lava lakes, gargoyles breathing streams of fire etc. The objective is to collect all coins on the map.

Open Source Agenda is not affiliated with "Chewman Vulkan" Project. README Source: RMDarth/Chewman-Vulkan
Stars
62
Open Issues
4
Last Commit
3 years ago
License
MIT

Open Source Agenda Badge

Open Source Agenda Rating