FrodeSolheim / fs-uae

Cross-platform Amiga emulator with a slight focus on gaming, but also with solid support for productivity apps including just-in-time (JIT) compilation.
https://fs-uae.net/
GNU General Public License v2.0
475 stars 95 forks source link

Feature Request : Black frame insertion #205

Open bidinou opened 5 years ago

bidinou commented 5 years ago

Hi ! Recent monitors usually support both a high refresh rate and some motion blur compensation / fast response time / ULMB / "strobe backlight" mechanisms.

As far as I understand, it requires the monitor to be set at a multiple of the emulated system (i.e. : 100 Hz for the Amiga) and the emulator to insert black frames. (i.e. : 1 every 2 frames).

It makes the scrollings / sprites movements extremely clear. Would it be possible to implement such a feature ?

Thank you so much for your work ! Best regards.

PS : you might be interested in this article : https://www.blurbusters.com/faq/motion-blur-reduction/

kokoko3k commented 3 years ago

Maybe you'll find it useful: Double Fields+ https://fs-uae.net/docs/options/uae-gfx-linemode

bidinou commented 3 years ago

Hi ! Thanks for the pointer -- indeed it's a pretty hidden feature. Could you share with us your use case ? Cannot test ATM unfortunately - I don't have the proper piece of hardware anymore.

kokoko3k commented 3 years ago

It works fine for me at 50hz too, but you've to push the backlight of your display or the picture becomes too dark. By blanking the lcd cell every odd frame, you can simulate a lower persistence. Also, the framerate is not halved because it will blanks alternatively odd/even lines. Neat :) I also made a shader that implements that feature, among other things. If you want to test, you've to set: "#define DO_ALT_BLANK 1"

http://wpage.unina.it/aorefice/sharevari/koko-aio/