*Disclaimer: there is no win condition, just an infinite score based arcade scope currently.


⚔️ Defend yourself by evading unseen enemies and illuminating them into destruction!

🔆 Selected ship segment will recharge light faster than the others

❄️ Each segment illuminates its own current light values

🪫 Wraiths absorb light from segments on contact

Cycle RADIAL MENU

Keys: Q and E

Move

Keys: WASD or ARROWS

About

Made for iRad Dev's Radial Menu Game Jam

Dev Notes:

- This version has 100 enemies spawned with rigid bodies colliding in the dark with each other, some walls and the player.

- Each emitting 12 Particles every 1.3s (particles are compiled noise textures, giving the illusion of many particles)  

- The player life orb is the product of a 3D scene with real-time lighting and a normal-map texture, sampled to a sprite via a sub-viewport as a texutre.

- The cracks are made by adjusting a generated noise texture at runtime. (I actually made a tutorial for this process https://github.com/MedusaTea/EasyCrackedGlassGodot) ^_^

- The super lag that happens when you die is all of the enemies immediately start getting new forces applied, so the physics engine  suddenly starts calculating all of their collisions into each other 😅

Will be working on performance updates and learning new tricks after the jam!

Main bottle necks (this web version is running on a single thread):

- lazy rigid body spawning and particle emissions off screen without any optimizations

-  making expensive updates during main processing
--- i have a hunch simply using deferred calls might leverage a queue manager and stagger the computations off the virtual main thread

- i added some invincibility frames to delay the orb noise texture frequency updating too much at once, that alleviated a ton of original performance hits.

- based on that, i think staggering the  forces applied to wraiths could go a long way.    especially at the end when they all depart away (or maybe just disable physics and "float them away" manually until you hit continue)

- orb 3D scene can get some easy gains but would like to see how to render even MORE detail on web, not reduce it for performance. 

Easiest win is likely to pre-compile a set of normal map textures to use at runtime rather than generating them each time the player takes damage 

(or even simpler, maybe there's a way to create them between starting main thread cycles and have them ready to swap in later!) 

StatusReleased
PlatformsHTML5
AuthorMedusaTea
GenreShooter
Made withGodot

Download

Download
Archive.zip 10 MB

Leave a comment

Log in with itch.io to leave a comment.