lightningterror
06aed8491c
GS-hw: Separate the Alpha masked Ad case from blend hw bit.
...
Allows for cleaner code.
2023-03-11 20:44:11 +01:00
lightningterror
62497b9300
GS-hw: Rename PS_CLR_HW to PS_BLEND_HW shader macro.
2023-03-11 20:44:11 +01:00
lightningterror
59aba9f757
GS-hw: Support Ad masked alpha on blend mix 1 and 2 clr cases.
2023-03-09 21:08:52 +01:00
lightningterror
911d35e800
GS-hw: Fix invert rounding for accumulation blend on gl.
...
Also make the checks consistent for all renderers.
2023-03-06 23:36:54 +01:00
lightningterror
b33242830e
GS-vk: Automatically adjust color compensation based on rgb value for hw blend clr3 case.
...
Auto adjust when any color is higher than 128 ( 1.0f) to get more accurate color results.
2023-03-06 19:49:27 +01:00
lightningterror
8c0ee33c4c
GS-ogl: Automatically adjust color compensation based on rgb value for hw blend clr3 case.
...
Auto adjust when any color is higher than 128 ( 1.0f) to get more accurate color results.
2023-03-06 19:49:27 +01:00
lightningterror
e8cf4822b1
GS-d3d: Automatically adjust color compensation based on rgb value for hw blend clr3 case.
...
Auto adjust when any color is higher than 128 ( 1.0f) to get more accurate color results.
2023-03-06 19:49:27 +01:00
lightningterror
a3ecf0b0bd
GS-vk: Add clr3 case for blend mix 2.
...
When Cs*(Alpha + 1) overflows compensate with adjusting Alpha output for Cd*Alpha.
2023-03-03 16:35:10 +01:00
lightningterror
58cb6ab728
GS-ogl: Add clr3 case for blend mix 2.
...
When Cs*(Alpha + 1) overflows compensate with adjusting Alpha output for Cd*Alpha.
2023-03-03 16:35:10 +01:00
lightningterror
f478b3959c
GS-d3d: Add clr3 case for blend mix 2.
...
When Cs*(Alpha + 1) overflows compensate with adjusting Alpha output for Cd*Alpha.
2023-03-03 16:35:10 +01:00
Stenzek
6118b94f9e
GS/Vulkan: Fix a bunch of validation warnings
...
None of these were errors, but it's still good to have clean output.
2023-03-02 15:49:13 +00:00
TellowKrinkle
7781907f0e
GS: Blend truncation and dither goes the other way when subtracting
...
Truncation happens after subtraction, so it's the equivalent of rounding the value to subtract *up* instead of down
2023-02-26 07:22:32 +01:00
TellowKrinkle
a7e2b98dc7
Vulkan: Format tfx.glsl
2023-02-26 07:22:32 +01:00
lightningterror
7f7950cd6b
GS-d3d: Check each channel individually if it overflows and do corrections.
2023-02-24 02:06:00 +01:00
lightningterror
bd64ad510b
GS-vk: Check each channel individually if it overflows and do corrections.
2023-02-24 02:06:00 +01:00
lightningterror
4e9b7e61a7
GS-ogl: Check each channel individually if it overflows and do corrections.
2023-02-24 02:06:00 +01:00
refractionpcsx2
925e874ada
GS-HW: Fix real 16bit value shuffles
2023-02-17 19:06:35 +00:00
Stenzek
7d08a54ad9
GS/HW: Optimize TC source size based on CLAMP
2023-02-09 10:51:06 +00:00
Connor McLaughlin
f96ca4ac1f
GS/OGL: Fix syntax error in fragment shader
2023-02-01 09:04:52 +01:00
lightningterror
8f183955a0
GS-vk: Fix sample_4_index shader.
...
Macro conditions conditions should return a value.
Fixes bad shader issues on games that trigger it.
Fixes Star Ocean shadows.
Fixes Keroro Gunsou - Mero Mero Battle Royale text.
Make the rounding consistent accross all renderers.
2023-01-20 10:18:03 +01:00
Stenzek
38957625ad
GameDatabase: Add GPUTargetCLUT
2023-01-11 23:37:43 +00:00
Stenzek
d30e076dbd
GS: Add GPU Target CLUT
2023-01-11 23:37:43 +00:00
Stenzek
0619555232
GS/HW: Use texel fetch/load instead of sampler for palettes
...
Saves a multiply in the shaders in some cases, and frees up one
descriptor slot.
2023-01-11 23:37:43 +00:00
lightningterror
3210f24293
GS-d3d12: Fix macro redefinition error in fxaa shader.
2022-12-22 04:27:20 +00:00
Connor McLaughlin
eba2273cd1
GS/OpenGL: Cleanups and GLES support
2022-12-16 11:11:15 +00:00
Connor McLaughlin
066cf42338
GS: Compute luminance in shader for FXAA
...
Fixes FXAA being broken after b706c25b68
.
Will be slightly difference since this is using the BT.709 coefficients
instead of CCIR 601 - but it matches the non-gather codepath now.
2022-12-12 09:31:11 +00:00
Connor McLaughlin
b706c25b68
GS: Change transparency shader to output full alpha
2022-12-11 03:00:49 +00:00
AKuHAK
2ab27ef42a
formatter: apply editorconig into various files
2022-11-25 22:41:00 +00:00
Connor McLaughlin
f7c79fe3cc
GS: Implement FidelityFX CAS
2022-11-23 11:45:37 +00:00
TellowKrinkle
2dfb819d35
Resources: ffx_cas.h Metal support
2022-11-23 11:45:37 +00:00
TellowKrinkle
cef8d03d49
Resources: ffx_a MSL support
2022-11-23 11:45:37 +00:00
Connor McLaughlin
4177b090b2
Resources: Add GPUOpen's FidelityFX CAS headers
2022-11-23 11:45:37 +00:00
lightningterror
0988b08f7a
GS interlace: Fix Wreturn-type, Wunused-variable, Wsometimes-uninitialized warnings.
2022-11-19 19:28:52 +01:00
sideprojectslab
6924249bcf
GS: Reverted field order in MAD shader updated weave shader to same field order as MAD and merged two Weave shaders into one
...
GS: corrected refactoring errors in interlace shaders
2022-11-18 21:29:37 +00:00
sideprojectslab
21fa2ee87b
GS: Improved MAD compatibility with other graphics settings
2022-11-18 21:29:37 +00:00
sideprojectslab
64f6bf52b0
GS: Cleaned up and commented Motiond Adaptive Deinterlacing shader code
...
GS: fixed compile error in Metal interlace shader
GS fixed more compile errors in Metal interlace shader
GS: Adjusted code indentation in interlace shader for all renderers
2022-11-18 21:29:37 +00:00
sideprojectslab
f10e7f4ab7
GS: Implemented Motion Adaptive Deinterlacing for all renderers
...
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
2022-11-18 21:29:37 +00:00
lightningterror
cdb886a454
GS-hw: Implement missing st_int shader bit.
...
Was causing bad shader errors in GT4.
2022-10-24 16:22:44 +02:00
lightningterror
abcbdc4a25
GS-hw: Further improve how we handle blend mix 1.
...
Compensate slightly for Cd*(As + 1) - Cs*As.
Try to compensate a bit with substracting 1 (0.00392) * (Alpha + 1) from Cs.
The initial factor we chose is 1 (0.00392) as that is the minimum color Cd can be, then we multiply by alpha to get the minimum blended value it can be.
2022-10-18 15:20:41 +02:00
Connor McLaughlin
c2823aae39
GS: Fix fractional scaling in GL/Vulkan
2022-10-17 15:26:01 +01:00
TellowKrinkle
1ad6605dfb
GS:HW: Remove comment on rgba to 8i only-blue optimization
...
Doesn't seem to improve anything anymore (GPUs do this with csel now anyways, it's like 5 instructions with no divergence)
2022-10-17 10:28:27 +02:00
TellowKrinkle
c6add663f8
GS:HW: Clean up ps_convert_rgba_8i
2022-10-17 10:28:27 +02:00
Connor McLaughlin
6c17f7ad49
GS: Support fractional upscale
2022-10-15 17:37:35 +01:00
TellowKrinkle
9b5dd92dad
GS:HW: Use 16-bit unorm for HDR
2022-10-11 18:17:27 +02:00
refractionpcsx2
92cd6e8435
GS: Fix DX shader error
2022-10-09 04:53:18 +01:00
TellowKrinkle
0637682eb0
GS:HW: Properly handle fbmask of negative values
...
Previously was possible with blending and colclip, but now more common with the new hdr algorithm
2022-10-09 04:06:59 +01:00
TellowKrinkle
73ae9f8879
GS:HW: Make HDR algorithm more float-precision-friendly
...
- Use whole numbers instead of 255ths
- Use range -128 - 127 instead of 0 - 255 for accumulation blends
2022-10-07 20:44:53 +02:00
TellowKrinkle
1b34eb14f8
GS: Pass through primitive ID in geometry shaders in DX12 and VK
...
Fixes primid destination alpha on sprites
2022-09-06 21:07:56 +02:00
TellowKrinkle
412480b326
GS: Don't add 10 to date flag to indicate initialization
...
We already have 1 and 2 dedicated to the job
2022-09-06 21:07:56 +02:00
TellowKrinkle
62f9b16139
GS:OGL: Use blend min for primid destination alpha
2022-09-06 21:07:56 +02:00