IMPORTANT: Install Angel Balls as a mobile app (PWA) – here’s why:

  1. Your progress stays safe – Saved game data is much less likely to be wiped out when using the installed app vs. just a browser tab.
  2. Play offline – Once installed, the game works without an internet connection.

External game link: https://angelballs.netlify.app/ (unfortunately, you can't install itch.io link as PWA for offline use, so please just use this external link)

You can scan this to open on your Handy device:

How to install Angel Balls as a mobile app (PWA):

External game link: https://angelballs.netlify.app/

Unfortunately, itch.io link cannot be installed for offline access, so just use this external link.

🚧 WORK IN PROGRESS, but there are 13 different levels, 4 angels, many balls with different qualities, 4 different blocks, 2 collectables, and fully working music track editor. I am still working on storyline, so dialog is still AI generated placeholder for now in all supported languages.

This is a lightweight 3D bowling game built in C++ using OpenGL ES 3.0, SDL2, GLM, and the Jolt Physics engine, with a fully custom rendering pipeline. The UI is built with the Clay UI library.

Planned platforms include desktop (Windows, macOS, Linux), web (via Emscripten/WebAssembly), and mobile (Android, with possible iOS support). Works best on mobile i have to say... The architecture is platform-agnostic, but the web build runs under Emscripten’s single-threaded environment, making performance constraints tighter and requiring careful optimisation.

Audio uses the YMFM library for chip emulation, with optional OPN (FM) synthesis when device performance permits. The OPN chip family was used in the Sega Mega Drive, giving the sound a distinctive retro character. I also added music track tracker, sou you can completely replace my rubish annoying songs with your beuatiful musical melodies.

The goal is clean rendering, responsive gameplay, and consistent performance across a wide range of devices. Also as a goal I accep to use only one 1024x1024 2048x2048 texture atlas, to reduce texture load times.

Because of this project I made the following tools:

  • My OPN instrument plugin to use a DAW to write music:

https://github.com/luke10x/arm2612

  • Tracker style library to describe notes to play the music:

https://github.com/luke10x/eggsfm

Also contributed GLES3 renderer to Clay UI.

These are the 3rd party libraries used:

Art is all mine own except:

- human model is from here: https://opengameart.org/content/very-low-poly-human although I had to change it slightly.


Updated 9 hours ago
StatusPrototype
PlatformsHTML5
Rating
Rated 5.0 out of 5 stars
(1 total ratings)
AuthorLapė Kalė (Žvaigždes)
GenreSports
AI DisclosureAI Assisted, Code, Text

Leave a comment

Log in with itch.io to leave a comment.