MAMEWorld Christmas Tree Ice Skating Arcade Party Town >> EmuChat
View all threads Index   Flat Mode Flat  

TServo2049
Lurker
Reged: 11/24/03
Posts: 43
Send PM
What work would need to be done to get more accurate vector shaders?
08/31/17 04:50 PM


Hello,

The following is not a demand for someone to develop something I want. It's purely for my own enlightenment. I don't know enough coding to contribute to any effort to make this possible, but I am still curious about what it would take to achieve it. Now, with all that out of the way...

When I was at California Extreme back in July, I again marveled at how classic vector games look (at least when they weren't converted to run on raster monitors or whatever it was that made some of the color ones look like they had bits eaten out of the lines and weird aliasing/"interlacing"(?) effects where an entire line was not visible at any one point in time, just different parts of it at different times...). It got me to thinking about what would need to be done to get more accurate vector shaders/filters in MAME. All the current CRT filters out there are understandably oriented toward raster-based games. The vector filters and HLSL help achieve something kind of sort of close to a real display, but there is still a long way to go before shaders can approximate the real thing for vector as much as raster.

My question is, what would need to be done to be able to achieve things such as variable intensity of vectors? On a real vector display, it seems to me that the closer two points are to each other, the brighter and "thicker" the vector gets. When you fire a shot in Asteroids, it is much brighter than any other object on screen, I presume because the draw distance is so short. When objects recede into the background in Tempest, they get brighter. The mazes approach the player as bright bursts of light and get clearer and less bright as they come closer and the distances between each point get longer. The same goes for Star Wars and other games with simulated 3D depth.

Also, due to the nature of shadow masks, color vector games don't have a "consistent" brightness for all objects, something white is brighter than something red or blue, since the presence of color means that light is essentially being filtered out of the visible spectrum. In Star Wars, the TIE Fighters' "fireballs" are brightest where they are white, where the red, green and blue overlap and intersect. And I love the Death Star explosion, which has all of what I describe - the center of the explosion is much brighter than the edges, and the final white explosion is brighter than the preceding red or blue ones. Obviously all displays show white as brighter than anything else, but it feels especially noticeable on an actual color vector display.

This kind of stuff isn't really possible with the current shaders. Everything seems to be uniform brightness and uniform thickness, long vectors have the same amount of decay/ghosting as short bright ones, and the glow seems to be more consistent over the whole image like you'd expect from raster. So, I am curious what the impediments are to achieving such things in shaders. I seem to recall one dev posting somewhere, I forget where, that the vector engine might have to be rethought, that MAME doesn't actually handle vector drawing the same way as real displays, but I may be misremembering. Or maybe it was referring to why bgfx can't apply shaders to vector graphics? Would the current video rendering frameworks allow for intensity control between two X/Y points, better simulation of variable refresh based on vector length, etc., and not just effects to simulate a raster-based environment? And if not, what obstacles still need to be overcome?

I obviously can't develop anything myself, and I'm absolutely not intending this to be some selfish demand for someone else to do something I want. This thread should be free of haranguing of devs to do this or do that. I am legitimately curious about what it might take to do such things in MAME, and why certain things aren't possible in the program right now. It's really just for my own education, so if anyone knows anything about these topics, I'd love to hear it. Thanks!







Entire thread
Subject Posted by Posted on
* What work would need to be done to get more accurate vector shaders? TServo2049 08/31/17 04:50 PM
. * Re: What work would need to be done to get more accurate vector shaders? TServo2049  08/31/17 05:08 PM
. * Re: What work would need to be done to get more accurate vector shaders? uman  08/31/17 09:25 PM
. * Re: What work would need to be done to get more accurate vector shaders? anikom15  09/01/17 05:16 PM
. * Re: What work would need to be done to get more accurate vector shaders? R. Belmont  09/05/17 10:40 PM
. * Re: What work would need to be done to get more accurate vector shaders? Envisaged0ne  08/31/17 06:38 PM
. * Re: What work would need to be done to get more accurate vector shaders? anikom15  09/01/17 05:44 PM
. * Re: What work would need to be done to get more accurate vector shaders? uman  09/01/17 10:53 PM
. * Re: What work would need to be done to get more accurate vector shaders? Haze  08/31/17 07:07 PM
. * Re: What work would need to be done to get more accurate vector shaders? anikom15  09/02/17 12:23 AM
. * Re: What work would need to be done to get more accurate vector shaders? Envisaged0ne  08/31/17 07:39 PM
. * Re: What work would need to be done to get more accurate vector shaders? MooglyGuy  09/01/17 09:47 AM

Extra information Permissions
Moderator:  redk9258, URherenow, Tafoid 
1 registered and 46 anonymous users are browsing this forum.
You cannot start new topics
You cannot reply to topics
HTML is enabled
UBBCode is enabled
Thread views: 655