shonumi / gbe-plus

DMG/GBC/GBA emulator and experimental NDS emulator.
GNU General Public License v2.0
501 stars 79 forks source link

Custom Tiles don't get flipped properly. #78

Closed frozenLake closed 6 years ago

frozenLake commented 6 years ago

102833798161999

Sprites still function though, so this is BG exclusive.

shonumi commented 6 years ago

This should be fixed now. A basic build-bot is up and running, and the latest builds should be available on mega.nz from now on -> https://mega.nz/#F!GhcQ1QYB!L5_8qN_S0gqYE-oCCa9mJQ

frozenLake commented 6 years ago

Unfortunately, this doesn't seem to fix it.

shonumi commented 6 years ago

I tested it yesterday and verified it twice. Are you sure? Send me any suspect files

frozenLake commented 6 years ago

14815950601538 manifest.txt lowerrightgrass

For the sake of showcasing the bug, I have provided the minimal manifest and tile replacement that shows this bug. Please use with Oracle of Ages.

frozenLake commented 6 years ago

489319554848508 Did a quick test, making sure that the tiles replaced didn't have any flipping when dumped. While vertical flipping works, horizontal does not. Plus, flipping is not considered when dumping tiles, so that is a secondary bug. However, that would either take modifying the image before it is dumped, causing it to look somewhat weird, or modifying the manifest format to add the flips done on tiles.

shonumi commented 6 years ago

Flipping isn't considered when dumping because the tile data is the same. It's just a flag in VRAM that flips it, and that's not necessary for the purposes of CGFX. CGFX reads the flag in real time and draws accordingly. Users have to be aware of any flipping to avoid dumping duplicates though.

I specifically tested horizontal flipping with the sign and it works. I'll have to see what's going on with the grass.

shonumi commented 6 years ago

Should definitely be fixed now. Buildbot was kind of broken for the past few days (wouldn't decrypt files on MEGA after uploading them), but that's been resolved. The link above is still good, so use the latest file available.

frozenLake commented 6 years ago

276634654740240 What the hell happened here?!

shonumi commented 6 years ago

Again, if you have issues, I need to see the files you're working with.

frozenLake commented 6 years ago

f7f5cc42f3dd485494c2f051d70391dea6eb871b.zip Sending over the build and Dump folder, in order to maximize information sent. Oracle of Ages is not included, for obvious reasons.

frozenLake commented 6 years ago

I can confirm that https://github.com/shonumi/gbe-plus/commit/d72d0f63dc0cdde13224a5daeffba7145237993c fixes both the old, and the new problem.

Edit: This also managed to teach me that the name of the 7z file from the build bot matchs the name of the commit.