Core Dump - Work In Progress
May 28, 1999 : After Tilburg, scrolling and sprites
Okay, I have to admit: it was actually one of the best fairs in years. Not only was the new location quite cosey, the reunion on the day before the fair was great fun.
I went to the reunion with Patrick Smeets, and we met up with the group around 23:00. We had a fair amount of drinks at the Irish Pub, and beat some people with foosball... I also had an interesting talk with Ivo Wubbels. More about that some other time. "Much fun was had by all", as Pat would have it.
Sprites and multi-directional scrolling
There has been some discussion on the newsgroup and mailinglist lately on the subject of scrolling, and later hardware sprites. It is not a new issue, it is actually very old. MSX 2 computers aren't made for scrolling. Hardware sprites are fast but limited.
Scrolling vertically isn't a problem, you can use VDP(24) if you're not using more than one layer. Horizontal scroll is more difficult. (Multi-directional scroll isn't much more difficult than horizontal, it usually only requires more buffering)
So, programmers have only a few options for horizontally scrolling games:
1. Use screen 4
2. Use screen 5
3. Use screen 6
4. Use screen 7
5. Use screen 8
Summarizing: due to memory/graphics ratios, screen 7 and 8 are not really suited for games. It can be done, but I wouldn't recommend it. Screen 5 is a nice tradeoff but for speed you'll probably resort to screen 5.
I've used screen 5 many times and you can get some really impressive stuff on the display.
On software/hardware sprites I've got only one thing to say: besides dedicated consoles (gameboy/NES/SNES/Megadrive...) almost no one uses hardware sprites. Generally, they are too limiting in colour use. Konami uses them all the time, but if you've got really good graphic designers you can afford to use them. The rest of us can't. Also, designing a palette has to be done with the greatest care: colour might need to be swapped to make use of the third colour when overlaying two sprites. (Coders will know this trick)
erm.. actually I can say a lot more about this but that'll be next week :)