mirror of https://github.com/PCSX2/pcsx2.git
f10e7f4ab7
implemented FastMAD motion-adaptive deinterlacing for OpenGL renderer, other renderers will crash. FastMAD is replacing blend (either mode) so select blend to activate MAD under the hood fixed an assert and assessed that one MUST select mode Blend bottom field first to enable MAD removed forced mode 2, added separate motion thresholds for current field and alternate field motion and optimized MAD for Top-FIeld-First mode committing kind-of broken status for review the algorithm works well on most games, but somehow Kingdom Hearts works at half resolution completely fixed weird artifacts on MAD, I only need to fix a 1-line offset that is causing the top of the screen to flicker fixed flicker on first line, I still need to fine-tune some coefficients solved all nastiness by realizing that MAD MUST work on an even resolution, so odd resolutions are rounded up. Now all games I tried look great made MAD sensitivity adjustable inside GDDevice.h and passed to shaders as a parameters. For this purpose ZrH is now a vec4 to hold more parameters conveniently ported MAD to DX11 and DX12 removed rounding of texture size to closest multiple of 2 and fized odd number of lines inside the shaders by also passing the vertical resolution as a parameter improved compatibility of upper buffer offset adjustment for odd resolutions added Vulkan support |
||
---|---|---|
.. | ||
common_header.glsl | ||
convert.glsl | ||
interlace.glsl | ||
merge.glsl | ||
present.glsl | ||
shadeboost.glsl | ||
tfx_fs.glsl | ||
tfx_vgs.glsl |