#23965 - dovoto - Sun Jul 25, 2004 5:05 pm
If anyone is interested [url]www.thepernproject.com[/url] has been/is being updated.
The new intro Day 1, Day 2, and Appendix A are up. The others should follow at a decent pace. I have a bit more free time again. Any feedback would be welcome.
DAY 1
On the first day the Gameboy Advanced will be introduced in all its technical splendor. Hopefully you will come to love it as I do. Also covered, will be the set up of your tools (both hardware and software) that will allow you to create your own video games.
DAY 2 Raster graphics and Input
The next chapter (or day if you will) will cover bitmap graphics. We will talk about such simple things as plotting pixels and blitting lines and various other fun filled ways to get your ideas onto the screen. Input from the keypad is also discussed in this section.
DAY 3 Sprites
It is off to the fun-filled world of winged pixies. This will be the first time you will get to really play with the GBA and its impressive game hardware. Sprites are one of the key elements to video games and there are as many ways to display them as there are cheesy web tutorials that claim to teach programming. Fortunately for us the GBA has built in hardware to manage these illusive features and this chapter will be your introduction to its flexible design.
DAY 4
Sprites would not be much fun if you did not have a background to contrast them against. In this chapter, rendering backgrounds using the various tile modes will be covered and we will finally be able to render huge (albeit simple) maps.
DAY 5
Timers, Interrupts, BIOS, and Compression will be covered today. Handling and creating your own interrupts is key to controlling the flow and timing of your games. Calling functions in the BIOS will prove to be a simple matter and we will throw in a bit of compression to test it all out.
DAY 6
DMA, Direct sound channels, and music playback are the topics. Direct Memory Access is a way in which we allow the hardware to copy data from one area of memory to the other. It is not the fastest way to do such things but it is the fastest we can get in C code and since I am not quite ready to open up the assembler we will stick with DMA. We will use our new found knowledge of interrupts and timers to play back a simple sound file then use a free library to play back some music.
DAY 7
Multiplayer comms?this dreaded and often neglected topic will be covered in painful detail. Mulitboot to 4-player action will be discussed. Due to my current lack of a second GBA this topic may be delayed for a bit. (*New* no$gba emulator was released freeware and supports emulation of multiple GBA meaning I should be able to have this section up sooner than I thought)
DAY 8
Tile modes revisited. Now that you have learned the basics for getting your backgrounds on the screen it is time to do something interesting with that knowledge. This chapter attempts to cover scrolling, animated tiles, and dynamic maps. Also covered will be rotation and zooming of backgrounds.
DAY 9
Sprites revisited. First we cover a bit of sprite rotation and zooming which I hope you will see is very similar to background rotation. Next we need to discus optimization of sprite memory since it is a limited thing. Finally the topic of animation will be tackled.
DAY 10
Collision detection. Yep that's right a whole day devoted to nothing other then collision detection. There really is that much to talk about.
DAY 11+
Today we will put it all together and create our own simple game. I am going to do a bit of an RPG?dragon warrior style. I may be forced to draw my own art so?beware. This day will be broken down into the following:
-Story development
-Determining data structures
-Tool creation
-Menus
-State based programming
-Scripting
-Main game rendering engine (background display and sprite animation)
-Battle engine
_________________
www.drunkencoders.com
The new intro Day 1, Day 2, and Appendix A are up. The others should follow at a decent pace. I have a bit more free time again. Any feedback would be welcome.
DAY 1
On the first day the Gameboy Advanced will be introduced in all its technical splendor. Hopefully you will come to love it as I do. Also covered, will be the set up of your tools (both hardware and software) that will allow you to create your own video games.
DAY 2 Raster graphics and Input
The next chapter (or day if you will) will cover bitmap graphics. We will talk about such simple things as plotting pixels and blitting lines and various other fun filled ways to get your ideas onto the screen. Input from the keypad is also discussed in this section.
DAY 3 Sprites
It is off to the fun-filled world of winged pixies. This will be the first time you will get to really play with the GBA and its impressive game hardware. Sprites are one of the key elements to video games and there are as many ways to display them as there are cheesy web tutorials that claim to teach programming. Fortunately for us the GBA has built in hardware to manage these illusive features and this chapter will be your introduction to its flexible design.
DAY 4
Sprites would not be much fun if you did not have a background to contrast them against. In this chapter, rendering backgrounds using the various tile modes will be covered and we will finally be able to render huge (albeit simple) maps.
DAY 5
Timers, Interrupts, BIOS, and Compression will be covered today. Handling and creating your own interrupts is key to controlling the flow and timing of your games. Calling functions in the BIOS will prove to be a simple matter and we will throw in a bit of compression to test it all out.
DAY 6
DMA, Direct sound channels, and music playback are the topics. Direct Memory Access is a way in which we allow the hardware to copy data from one area of memory to the other. It is not the fastest way to do such things but it is the fastest we can get in C code and since I am not quite ready to open up the assembler we will stick with DMA. We will use our new found knowledge of interrupts and timers to play back a simple sound file then use a free library to play back some music.
DAY 7
Multiplayer comms?this dreaded and often neglected topic will be covered in painful detail. Mulitboot to 4-player action will be discussed. Due to my current lack of a second GBA this topic may be delayed for a bit. (*New* no$gba emulator was released freeware and supports emulation of multiple GBA meaning I should be able to have this section up sooner than I thought)
DAY 8
Tile modes revisited. Now that you have learned the basics for getting your backgrounds on the screen it is time to do something interesting with that knowledge. This chapter attempts to cover scrolling, animated tiles, and dynamic maps. Also covered will be rotation and zooming of backgrounds.
DAY 9
Sprites revisited. First we cover a bit of sprite rotation and zooming which I hope you will see is very similar to background rotation. Next we need to discus optimization of sprite memory since it is a limited thing. Finally the topic of animation will be tackled.
DAY 10
Collision detection. Yep that's right a whole day devoted to nothing other then collision detection. There really is that much to talk about.
DAY 11+
Today we will put it all together and create our own simple game. I am going to do a bit of an RPG?dragon warrior style. I may be forced to draw my own art so?beware. This day will be broken down into the following:
-Story development
-Determining data structures
-Tool creation
-Menus
-State based programming
-Scripting
-Main game rendering engine (background display and sprite animation)
-Battle engine
_________________
www.drunkencoders.com