It’s been a slow week, with little progress on the game, so here’s my sprite generator/picker.
The sprites are created by a simple algorithm that generates a sequence of “random” angles and radii. Each sprite is displayed along with the seed value given to the random number generator, so I can pick the ones I like and generate them in-game by using their seed numbers.
It makes a fair number of duds, but this is one of those cases where making it better than “good enough” achieves nothing.
These new enemies explode into a shower of bullets when destroyed. The player could just ignore them, but then they’ll lose their accumulated multiplier. Better to time their destruction so that there’s plenty of space to deal with the fallout.
I’ll probably scatter these fairly sparsely, rather than have wave after wave like in the video.
(The new sprite shadows are visible here from time to time as well.)
These shadows have no impact on gameplay at all, and are barely even noticeable while playing. But during one of those motivational blockages that occur from time to time, I got myself moving again with this bit of eye candy (when I should have been designing more enemies).
When the background beams are pointing out of the screen, the extremities of the sprites are extended into translucent black quads, to give the effect of rays being obstructed. Here’s a video that shows them in motion.
In a recent post I referred to premultiplied alpha and linked to a moderately wordy article on the subject. I really wanted to link to a short summary, in terms of OpenGL. This is an attempt to write such a summary.
New in this image: Textured background “beams” and a new enemy sprite.
Enemy sprites are currently picked from a pallette of randomly generated shapes, so they’re fairly throwaway — I’m likely to change these ones.
Unlike last week’s video which was captured from the PC build, this screenshot was taken from my phone and has only 16-bit colour. The effect is quite noticeable on the gradients but less so when playing.