-
Notifications
You must be signed in to change notification settings - Fork 69
Open
Description
As per these gbdev.io docs, when it comes to drawing an OAM pixel, the Gameboy first calculates which of 2 overlapping objects has higher priority; and THEN considers the winning object's BG priority bit. This can be exploited to "mask" objects (see INTERACTION WITH "BG OVER OBJ" FLAG in the article.)
Currently on binjgb, this behavior does not occur; it calculates the BG priority bit of all objects and renders whatever is on top.
On my local version of binjgb, I was able to fix this by inserting the following lines to emulator.c:



which seems like a hacky solution, but you can see a working version on my demo GB game.
I'm unable to open a pull request as I'm unable to create a branch but this is the issue and a potential solution!
Metadata
Metadata
Assignees
Labels
No labels