Does skipping backrground part affect sprites?

Discuss technical or other issues relating to programming the Nintendo Entertainment System, Famicom, or compatible systems. See the NESdev wiki for more information.

Moderator: Moderators

Post Reply
User avatar
Banshaku
Posts: 2417
Joined: Tue Jun 24, 2008 8:38 pm
Location: Japan
Contact:

Does skipping backrground part affect sprites?

Post by Banshaku »

There is one part that I may need to skip a part of the background by a few line to make a certain part look connected and or continuous. I remember testing with a raster effect on the mmc3 and it did work but I only tested the background itself, not with other element like sprite on top in a real environment.

For now I do not need to know if there is other way to do it but if the background lines are skipped this way, does it have an impact on the sprites? My guess is no because if it did then maybe effect like, for example, the presentation of a robot master in mega man that "grows" the banner which just seems a part hidden with a raster that is shown gradually.

Is there other thing to be careful when skipping part that way?
User avatar
thefox
Posts: 3134
Joined: Mon Jan 03, 2005 10:36 am
Location: 🇫🇮
Contact:

Re: Does skipping backrground part affect sprites?

Post by thefox »

What do you mean by "skipping a part"? The only way I can see that it would affect sprites is if you're doing stuff like disabling rendering (and even in that case it will only cause problems if you disable BOTH background and sprite rendering, as that would turn off the background/sprite fetching/evaluation logic).

Sprite rendering is pretty much entirely separate from background rendering.
Download STREEMERZ for NES from fauxgame.com! — Some other stuff I've done: fo.aspekt.fi
User avatar
Banshaku
Posts: 2417
Joined: Tue Jun 24, 2008 8:38 pm
Location: Japan
Contact:

Re: Does skipping backrground part affect sprites?

Post by Banshaku »

I will answer what I meant by skipping but I think you already answered my question with this:
thefox wrote:Sprite rendering is pretty much entirely separate from background rendering.
So there should be no impact to the sprites on screen since I'm working on the background.

I have a scenario where I need to scroll vertically from 1 screen to the other. Between the 2 screens there is a gap. I skip the lines of the gap with an interrupt so it looks like both screen are connected. The sprite would be around that gap when during the transition so if the sprites were affected that would have been an issue.

I remember testing if it was doable with an mmc3 and the background part was fine, both screen seemed connected during the scroll even though there was a gap between them.

I won't need it for my game specifically but for one experiment it was necessary. Only one part was left and will test it once I have a chance.
User avatar
thefox
Posts: 3134
Joined: Mon Jan 03, 2005 10:36 am
Location: 🇫🇮
Contact:

Re: Does skipping backrground part affect sprites?

Post by thefox »

Ah yeah, in that case (if you're only modifying the scroll/address registers) it should be perfectly OK.

Crystalis uses that technique with MMC3 to skip over the status bar.
Download STREEMERZ for NES from fauxgame.com! — Some other stuff I've done: fo.aspekt.fi
User avatar
Bregalad
Posts: 8056
Joined: Fri Nov 12, 2004 2:49 pm
Location: Divonne-les-bains, France

Re: Does skipping backrground part affect sprites?

Post by Bregalad »

Enabling only background or only sprites still makes everything works normally, only disabling both simultaneously creates the forced blanking which has other effects such as stopping the PPU from fetching data and updating scroll registers.

For some reason really few games ever disable sprites or background separatedly, some goes as far as using a blank CHR-ROM bank where a simple $2001 write would have done the same trick. However I can name 3D-Worldrunner which disables the background for its pits.
Post Reply