Obviously, I've added more than that. I finished implementing a new enemy, which tries to avoid being in front of the player. I also added some nice area transitions. At the start of each area, the player flies in from the side as the screen fades in from black. At the end, he zooms out the other end as the screen returns to black. It's a nice little effect, and I think it makes the game feel more polished. I added additional details to some of the backgrounds, and gave the first boss their own area. While I was at it, I added many new sound effects that had been previously missing, and fixed a bug that had been causing an issue similar to z-fighting amongst a number of sprites.
All of that's tiny, though, compared to the major additions that I made this week:
Focus, Scripting, and Shaders!
Focus
Focus is the final ability in Space Douchebag's arsenal. When activated, everything slows down to a fraction of its' normal speed. You continue to fire at a normal rate, however. This ability doesn't last long and charges slowly, but it makes aiming and dodging much easier.
Scripting
The first level is just about finished, and the enemy spawns aren't as random anymore. I'm using the term 'scripting' here pretty loosely, to be honest. Still, I can now define how the levels play, something that I've wanted to do from the start. It isn't a very elegant system, but it does the job rather well. The important thing is that I can now write up a text file that defines when specific enemies spawn, how the camera moves, and where the level begins and ends.
Shaders
In order to get those level transitions working, I had to write a shader system. The transition fades themselves are governed by a pixel(fragment) shader, and I can now define specific shaders by to be applied on an area-by-area basis.(by the way, for those of you who don't know what shaders are, just think of them as filters from a graphics program. It's the same general idea.)
So, that's a nice bunch of work!
I don't have many interesting things to screenshot, I'm afraid, so I'll leave them for next week. I'm also considering continuing this project after the end of the semester, although I don't have any kind of timeframe on when I'll do it.
No comments:
Post a Comment