I wrote an application to demonstrate proper generation of scanline effect for LCD-type monitors. You can download the latest version here:
How does it work?
In CRT displays, pixels of black lines are illuminated by active lines. However, this is true for both lines above and below the black line.
In order to simulate a CRT black line, brightness amounts that are coming from each line must be summed.
Static png masks that are used by MAME are not able to achieve this effect (although I prepared some masks that mimic it). So a new method must be used. Maybe HLSL scripts can do this.
Example with 50% scanline brightness:
rgb(200,60,0) ---> pixel of active line above
rgb(75,15,15) ---> pixel of black line
rgb(100,0,60) ---> pixel of active line below
As you see, each active line provides 25% brightness.
I wrote this application as a proof of concept. I'm presenting the idea. If you want to inspect the source code and adapt it to your needs, you can visit the project page:
Edited by vio (11/13/16 11:41 PM)