Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dithering #52

Open
AlpyneDreams opened this issue Nov 14, 2022 · 1 comment
Open

Dithering #52

AlpyneDreams opened this issue Nov 14, 2022 · 1 comment
Labels
enhancement New feature or request

Comments

@AlpyneDreams
Copy link
Owner

May be interesting to implement. Most older games request it but d3d9 doesn't support it. Could be upstreamed too to d3d9. Not sure if it was ever a thing in 32-bit color. But a lot of games use textures or buffers with more limited colors. Also might be interesting to emulate 16-bit color with dithering if possible.

Modern games still use dithering. For example Unity adds random noise to reduce quantization error. It can, however, somewhat sacrifice recorded video quality so it should be configurable. Worth looking into what techniques classic D3D games might expect from drivers, which blits etc have dithering applied.

@ViNi-Arco
Copy link

ViNi-Arco commented Jul 11, 2023

@AlpyneDreams

Could be upstreamed too to d3d9. Not sure if it was ever a thing in 32-bit color.

Hi Jeff, when you talk about Dithering the first game that comes to my mind is GTA San Andreas, I think dithering can benefit D3D9 game too, Wesser made a mod that corrects the Sky Gradient of GTA SA with dithering, it's called SkyGrad:

SkyGrad-gtasa

Now, do you plan to implement Dithering as an enableable option per game, as a solution to this problem?

Edit: Something Wesser mentions in the link I linked that may help you:

I got rid of the awful sky bandings which make the gradient looking blocky thanks to dithering: a randomized grain raster is sampled and each pixel is taken as a threshold to choose whether to dither or not to dither when the integer rounding would inevitably compromise the linearity of the color interpolation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants