Discussion about software development for the old-school Gameboys, ranging from the "Gray brick" to Gameboy Color
(Launched in 2008)
You are not logged in.
I've been thinking about it for weeks but I can't find a way to make it work...
I want to make a rain effect on GB. So first, I thought I could use sprites, but I can only use 40 of them so I will quickly run out of memory. (I've read that it is possible to displaying more sprites using the LYC register but I think it's too tricky for me...)
Then I though : "Well, fuck sprites ! Let's refresh that background 35468431 times a second !"
And I realise that the gameboy may not support too much BG refresh... And that since I need also half of the screen scrolling, it will be impossible.
Another possibily is to mimic the rain by distording the screen verticaly very quickly but I have no idea of how to do that...
I can't sleep with this goddam rain effect... HELP !
Offline
Well what first come to my mind would be the rain effect on Pokémon Gold/Silver, which is done in that case by using sprites :
Another game using rain is MegaMan 4 on the NES (https://www.youtube.com/watch?v=ekl8VYQXx_4) which seems to use the constant refresh method, but I may be wrong.
By the way, if you want half of the screen scrolling and the other half fixed (from what I understood), don't forget that you can use for example the background for the scrolling part, and the window for the fixed part (or maybe use some register shifts).
Offline
I though about Pokemon too but I have no idea how they do that kind of fx...
I don't think that the scrolling part will be a real problem but can I put a window at the top of the screen and tell it to not cover the scrolling part ? (The background at the bottom)
Offline
I'd do sprites.
If sprite count is an issue, only have 4 or 5 large 8x16 sprites at a time. If you can spare the sprites, 10 or 15 well placed 8x8 sprites could definitely do it good. Scrolling them wouldn't be hard.
Remember that palette color of 00 is transparent for sprites.
Also, remember sprites are also displayed over windows if bit 7 of the priority flag of the sprite is 1.
EDIT:
Quickly looked at the more than 40 sprites thing. It's a little bit tricky, but not TOO bad. If you want help we can help.
So others don't have to search, the technique is editing the OAM while the screen is in HBlank, using the LY=LYC coincidence interrupt to cause the HBlank interrupt.
Last edited by l0k1 (2016-01-13 18:43:35)
Offline