Rakashazi / emu-ex-plus-alpha

Multi-platform computer & game console emulation system including supporting code (EmuFramework) and core engine (Imagine)
GNU General Public License v3.0
588 stars 145 forks source link

[Issue] [GBA.emu]: Sprite becomes invisible instead of blinking #1636

Open 382kB opened 2 weeks ago

382kB commented 2 weeks ago

Describe the bug

I'm playing "Shin-chan: Aventuras en Cineland" and when my character deals damage to an enemy it becomes invisible instead of blinking.

I use BIOS

Shin chan - Aventuras en Cineland (Spain).gba

CRC  769a7666
MD5  0dbc85a954aba764a3bbae2e078d26f0
SHA1 069b7e991a35a78b321959f2f194

Steps to reproduce

  1. Start the game
  2. Enter the first phase
  3. Face the mini boss and boss

Expected behavior

11:40 and 13:03

Relevant log output

No response

Add screenshots

No response

IdiotBlueMage commented 2 weeks ago

This may be the fault of VBA-M's auto-blend. Instead of replicating flickering sprites on purpose for transparencies on the GBA screen, this emu will blend them together by default. Nice on F-Zero because GBA.Emu has no frame blend modes, but bad on edge cases.

Rakashazi commented 16 hours ago

I tested this and the sprite is blinking fine for me. Check to make sure you aren't running at 1/2 the target frame rate as that will break flicking effects. Also I haven't forgotten about implementing an inter-frame blending mode but my plan it to make it a pre-processing shader so there's no CPU overhead and allow it to work on every emulated system in a generic way.