Commit graph

301 commits

Author SHA1 Message Date
lightningterror
f6a9498fb8 Revert "gsdx-ogl/d3d11: Add a assert when texture is too small or too big."
This reverts commit 99f814d376.

The assert gets triggered on Linux and so debug build can't be used properly.
Would be nice to investigate why in the first place but until then revert the
entire commit. We have checks for texture limits anyway so it shouldn't be an issue.
2020-04-29 20:00:53 +02:00
lightningterror
f54b79c274 gsdx-hw: Move GSC_XenosagaE3 crc hacks to Aggressive state.
It will allow D3D11 to render Texture shuffle effects.

Keep the crc hacks on aggressive instead of removing them as they might
still be useful.
2020-01-31 16:19:58 +01:00
lightningterror
6bcd118b62 gsdx-d3d11: Adjust anisotropic filtering handle.
Previous behaviour:
Anisotropic filtering was continuing to run even with Nearest filtering.
On opengl it doesn't run on nearest filtering. The gui for both
renderers also greys out aniso when nearest is selected.

Anisotropic filtering being able to run on palette texture. This caused
to break the rendering on palette textures for games that use it.

PR behavior:
The PR corrects both of these behaviors, Aniso won't run on palette
textures as well as nearest filtering.

Test cases for observing the issues were used: Star Ocean 3, Fifa
Street.
2020-01-26 22:02:19 +01:00
lightningterror
0c5353a709 gsdx-hw: Remove GSC_DemonStone crc hack.
It removed texture shuffle effects.
Half screen issue can be properly emulated with "Half-screen fix" option
set to Force Enabled.
2020-01-23 01:22:23 +01:00
lightningterror
f5eeaf1baa gsdx-hw: Split half screen/bottom detection in 3 levels.
Automatic, same as before, automatically enable based on height delta.

Force Disabled, fully disables the half bottom detection.

Force Enabled: Fully enables the half bottom detection.
2020-01-23 01:11:57 +01:00
lightningterror
e43ba53ea9 gsdx-d3d11: Remove unused m_rt_ss sampler.
It was removed with old rtCopy DATE code.
2020-01-18 18:06:46 +01:00
lightningterror
2827394f3c gsdx-hw: Disable half screen TS fix for Xenosaga 3.
Xenosaga handles the half bottom as an vertex offset instead of a buffer
offset which does the effect twice.
Half bottom won't trigger a cache miss that skip the draw because it is
still the normal buffer but with a vertices offset.

Issue #3147
2019-11-28 00:04:15 +01:00
lightningterror
cc62165e36 gsdx-hw: Remove GSC_ResidentEvil4 crc hack.
Game is properly rendered on all renderers, any upscaling issues can be
resolved with Half Pixel Offset Normal.
2019-11-25 08:17:25 +01:00
lightningterror
89848346ae gsdx-hw: Add comments explaining what GSC_MidnightClub3 crc hack does. 2019-11-17 17:14:27 +01:00
lightningterror
24be7785db gsdx-hw: Add Persona 3 to automatic mipmapping (basic level).
Fixes flashing / strobing windows.
Issue #1342
2019-10-27 02:03:56 +01:00
lightningterror
b34338a500 gsdx-d3d11: Fetch the texture PSM format rather than the context format in texture sampler.
Match opengl behavior.
2019-10-21 23:23:22 +02:00
lightningterror
70c2778686 gsdx-hw: Adjust GSC_Bully crc hack.
Previous skip value 6 wasn't enough and caused some visual issues on the
ntsc version. Use value of 8 instead.

Issue reported by ozzie212121 on discord.
2019-10-21 18:55:45 +02:00
lightningterror
7bf920b07c gsdx-hw: Purge impact screen crc hack for Burnout Revenge.
Effect is properly rendered with depth emulation, so far only Burnout
Revenge triggered the crc hack from my testing.

Triggering the draw is done when the player car crashes.
2019-10-11 21:04:20 +02:00
lightningterror
f2a9b59aae
gsdx-ogl: Hit unsafe instead of safe path for sw fbmask when there is no alpha blending. (#3100)
So far notable performance improvement show Spiderman 3 and Scarface of 1-2 fps when using basic blending. Full list of known affected games at #3100
2019-10-03 15:50:19 +02:00
KrossX
4db6b287cd GSdx-d3d11: Make TFX shader more similar to OGL's.
Denormalize FOG and COLOR to match as well.
2019-09-15 19:02:36 +02:00
lightningterror
99f814d376 gsdx-ogl/d3d11: Add a assert when texture is too small or too big.
Add an assert for when texture is below 1 on direct3d/ogl.
Add an assert for when texture is above direct3d limit.
2019-08-26 15:55:43 +02:00
lightningterror
de7a3b70c9 gsdx-d3d11: Adjust maximum texture size limit based on available feature level.
d3d10 = 8192
d3d11 = 16384

Seems it is easier to hit the limit. Champions of Norrath with 8x
upscale for example.
2019-08-26 15:55:43 +02:00
lightningterror
d77d440a04 gsdx-hw: Re enable automatic mipmapping for Jak 1 and 3.
Issue #2916 has been resolved in #3076
2019-08-19 23:27:58 +02:00
Alessandro Vetere
6feb59fef5 GSdx-hw OGL: log if tex size gt PBO segment size.
Texture data may be corrupted in this case due to missing
fences synchronization.
2019-08-19 23:13:56 +02:00
Alessandro Vetere
63982bf6b7 GSdx-hw OGL: fix PBO pool map size.
Round up mapping size for alignment before computing
wrapped pointer.
Avoids memcpy after end of PBO buffer.
2019-08-19 23:13:56 +02:00
KrossX
9b651e44d0 GSdx: Fix mipmap SSE2 code for linear mipmap nearest filter. (#3064)
Fixes a regression introduced in e728a14c19
2019-08-16 09:03:05 +01:00
Alessandro Vetere
9e687895e1 GSdx-hw TC: improve search tex in RT
Fixes eyes rendering in Jak games both ingame and in cutscenes.
Previous method yielded no eyes in Jak 2/3/X cutscenes.

- Generalized offset search logic with caching system (works for BW > 1
and any PSM, limited to PSMCT32 for now)
- CRC Flags mechanism for default behavior enabling in Jak games
2019-08-14 17:09:51 +02:00
Alessandro Vetere
7c42928b57 GSdx-hw TC: invalidate Source with Target TEX0
Fixes eyes blinking in Jak games with tex in rt search
enabled.

- Target TEX0 in Source is Source TEX0 if the Source is
not build from Target, otherwise it is the Target TEX0,
allowing improved Source invalidation
2019-08-14 17:09:51 +02:00
Alessandro Vetere
68cfc5d953 GSdx-hw TC: fix Target::Inside check
- inclusion shall not be strict only on start side
2019-08-14 17:09:51 +02:00
Alessandro Vetere
2007894ba6 GSdx-hw TC: fix end block computations
- compute bottom right texel block as last valid block
2019-08-14 17:09:51 +02:00
Alessandro Vetere
dfa4680547 GSdx-hw: SwSpriteRender, fix drawing region 2019-08-14 16:18:39 +02:00
Alessandro Vetere
1f6b44d556 GSdx-hw: SwSpriteRender, improve no rast. check 2019-08-14 16:18:39 +02:00
lightningterror
51ba799779 GSdx: Use rt for dRect size, update crc level label.
Use rt for dRect size for OI_SonicUnleashed fix.

Make CRC level label name and position match between windows and linux.
2019-08-04 13:16:47 +02:00
lightningterror
c8c1429493 gsdx-hw: Add some logs for OI fixes, add JakX beta eu crc id. 2019-07-30 01:01:23 +02:00
lightningterror
e79ea75ae2 gsdx-hw: Add OI rendering fix for Big Mutha Truckers.
It will allow to render the shadows properly, also update the crc
hack to skip less effects.
2019-07-30 00:29:07 +02:00
lightningterror
91570a9e0f gsdx-ogl/d3d11: Also ensure that we set proper ini values for Shade Boost sliders.
Should avoid any potential issues if ini values are wrong for shade
boost.

Bonus: Fix gui overlapping issues when sliders are on maximum (100).
2019-07-17 01:16:46 +02:00
lightningterror
888897ed48 gsdx-osd: Ensure we set proper data for osd options.
Should avoid any potential issues if ini values are wrong for osd.
2019-07-16 23:42:34 +02:00
lightningterror
56b8612502 gsdx-d3d11: Set maximum allowed texture size to d3d10 limits which is 8192.
Should prevent any issues if we ever go over the limit.
2019-07-15 22:32:45 +02:00
iMineLink
f409079864 GSdx-hw: New SW sprite renderer, used in Jak games only for now. (#3001)
Developed a new SW sprite render function, which is used to fix
Jak and Daxter colors in Jak games and to remove the old Jak games hack
which yielded wrong colors and clashed with TC search texture in RT function.

- Remove OO_JakGames hack for palette readback from framebuffer (slow,
clashes with texture in RT TC function, clashes with Target readback logic)
- Developed new method SwSpriteRender with CPU rendering logic
- Add OI_JakGames method using SwSpriteRender for CPU palette rendering (fast,
does not clash with texture in RT TC function, no readback required)

Bonus: fps also sees an improvement in Jak games 3-5 increase.
2019-07-13 01:05:27 +02:00
lightningterror
8e3b34bce6 gsdx-ogl: Comment out pabe bit, not yet used. 2019-07-11 20:11:34 +02:00
lightningterror
96b02be1d1 gsdx-hw: Add Harry Potter and the Goblet of Fire,
Project Snowblind to automatic mipmapping.

Add some extra missing crc ids too for GT4 and Ape Escape 2.
2019-07-11 13:12:06 +02:00
lightningterror
d0cb0f59d9 gsdx-d3d11: Extend BLEND_NO_BAR to also hit on clamp 0, it's faster than standard HDR algo.
GOW shows a nice fps improvement (+6 give or take). Spyro too maybe.
2019-07-08 00:40:54 +02:00
lightningterror
2cd9aff867 gsdx-d3d11: Extend sw blending to BLEND_NO_BAR which is also free and doesn't require rt sample nor any barriers.
It helps light rendering in SW Battlefront 2, VP2 also triggers it but needs to be further tested what it does.
2019-07-08 00:40:54 +02:00
lightningterror
b19804190e gsdx-hw: Add an OI hack for Sonic Unleashed.
It will allow to render the shadows properly.

Rendering pattern is:
Save RG channel with a kind of a TS (replaced by a copy in this hack),
compute shadow in RG,
save result in alpha with a TS,
Restore RG channel that we previously copied to render shadows.
2019-06-23 23:34:25 +02:00
lightningterror
40929a4728 gsdx-d3d11: Add rgba channel selection/support to StretchRect. 2019-06-23 23:34:25 +02:00
lightningterror
e9825dccc0 gsdx-ogl: Add rgba channel selection/support to StretchRect. 2019-06-23 23:34:25 +02:00
lightningterror
066a9aaf71 gsdx-hw: Purge Sonic unleashed crc hack. 2019-06-23 23:34:25 +02:00
lightningterror
62417dae99 gsdx-hw: Revert dmc 3 TS hack purge.
Seems like Texture shuffle/depth is not handled properly in all cases so
revert the change until we fix it properly. Move it to gl level too.

Commit:

11cd6b56cd
2019-06-20 10:36:21 +02:00
lightningterror
300f16df61 Gamedb/gsdx-hw: Add gamefix patch and crc id for Harry Potter and the Prisoner of Azkaban EU.
Gamefix patch source:

https://forums.pcsx2.net/Thread-Fixing-unplayable-games?pid=600492#pid600492
2019-06-18 22:34:17 +02:00
lightningterror
9401e52b08 gsdx-d3d11/gui: Move the nvidia hack toggle to Disable Safe Features.
With the sprite hack removed it was no longer possible to toggle this
hack on nvidia gpus, the toggle has been moved to Disable Safe Features.

It some issues caused by the hack in sotc, fatal frame and border offset
issues.
2019-06-18 22:06:35 +02:00
lightningterror
11cd6b56cd gsdx-hw: Purge useless d3d11 only hacl for DMC3.
Texture shuffle emulated correctly.
2019-06-18 20:21:03 +02:00
lightningterror
e6d42338ad gsdx-hw: Fix incorrect variable name when tc is disabled.
Allows to compile gsdx with tc disabled properly again.
2019-06-17 00:11:47 +02:00
lightningterror
a936cd9eb1 gsdx-d3d11: Remove remaining uav (UnorderedAccessView) code, it wasn't used
. Code can be readded in the future if there is a need for it. Advanced
DATE for example.
2019-06-16 20:42:28 +02:00
lightningterror
34bedddd5c gsdx-d3d11: Update nvidia hack handling.
Don't query the api for the adapter description twice.
2019-06-16 20:42:28 +02:00
KrossX
39f509feaa gsdx-hw: Remove no longer needed Sprite hack, replaced by improved atst code already. 2019-06-16 20:42:28 +02:00