Commit graph

6993 commits

Author SHA1 Message Date
Unknown W. Brackets
8779421a3e GLES: Reverse alphamask when comparing to CLUT.
The CLUT is already reversed.
2022-04-25 08:54:02 -07:00
Unknown W. Brackets
ec05bce068
Merge pull request #15502 from hrydgard/gran-turismo-regression-fix
Simplify alphasum checking for DXT textures, and fix a regression
2022-04-24 17:23:59 -07:00
Henrik Rydgård
35e7affa3e Simplify alphasum checking for DXT textures, and fix a regression
Got some weird blackness in the sky in Gran Turismo. This fixes that.
2022-04-25 00:54:47 +02:00
Henrik Rydgård
32df78a2cc Make the existing ReinterpretFramebuffers/ShaderColorBitmask path work for Split/Second
It took writing and debugging #15500 for me to understand what the issue with the old path was..

Much simpler alternative to #15500, or we could merge both but disable Split/Second
for this one. Needs some benchmarks I guess...
2022-04-25 00:11:09 +02:00
Henrik Rydgård
3d4c4aa5b5 Fix regression with CLUT16 textures. See #12188 2022-04-24 00:43:15 +02:00
Henrik Rydgård
ed7dfdc8ad Fix mip level bug in Vulkan texture cache. 2022-04-23 22:51:11 +02:00
Henrik Rydgård
c52a5e9e25 Fix checks for the "fake mipmap" situation.
Fixes #15492
2022-04-22 22:59:20 +02:00
Unknown W. Brackets
34d0acac4e Vulkan: Save textures using a memory copy. 2022-04-17 20:55:39 -07:00
Unknown W. Brackets
39d6dc1740 Vulkan: Allow saving const tex levels.
This might be used for fonts, for example.  They could be replaced, so no
reason not to export.
2022-04-17 20:06:03 -07:00
Henrik Rydgård
dffc1a9196 Add the slow comment to one more place 2022-04-18 00:40:49 +02:00
Henrik Rydgård
b1af940d8e Save textures on background tasks when texture dumping is enabled.
Should help #15478, at least a bit.
2022-04-18 00:26:35 +02:00
Henrik Rydgård
3a09c85fb1 Fix hang when choosing "Skip" in first-time init. Warning fix, comment add.
Fixes #15011
2022-04-17 23:02:37 +02:00
Henrik Rydgård
a31608e557 Crashfix 2022-04-15 19:59:24 +02:00
Henrik Rydgård
900ff64cf1 Buildfix 2022-04-15 13:39:01 +02:00
Henrik Rydgård
3efce3ceca Try a clang pragma to avoid overeager auto-vectorization 2022-04-15 13:26:54 +02:00
Henrik Rydgård
9e60b82c54 Buildfixing, correct NEON type usage 2022-04-15 13:19:03 +02:00
Henrik Rydgård
185b93058e SIMD-optimize CheckMask16 / CopyAndSumMask16 2022-04-15 12:40:10 +02:00
Henrik Rydgård
c4dfbf4f1a Delete a lot of specialized alpha checking code.
This was now only used to check alpha in CLUTs, and the generic functions will not actually be any slower.
2022-04-15 12:34:50 +02:00
Henrik Rydgård
a5ee1884c1 Address feedback 2022-04-15 01:08:14 +02:00
Henrik Rydgård
a3d650d3e9 One more NEON optimization 2022-04-15 01:03:55 +02:00
Henrik Rydgård
ffcfef6031 Quick NEON optimization of CheckMask32 2022-04-15 00:56:26 +02:00
Henrik Rydgård
8bc2d1a653 SSE optimize a common case for video 2022-04-15 00:56:26 +02:00
Henrik Rydgård
1dae81a98a Yet another bugfix 2022-04-15 00:56:26 +02:00
Henrik Rydgård
3bf9ea8de6 Debug log (remove before merge) 2022-04-15 00:56:25 +02:00
Henrik Rydgård
a0ca968b1e Bugfixes, handle the rest of the cases 2022-04-15 00:56:25 +02:00
Henrik Rydgård
42cd937de2 Simplification and some cleanup 2022-04-15 00:56:25 +02:00
Henrik Rydgård
613df29467 Remove redundant line 2022-04-15 00:56:25 +02:00
Henrik Rydgård
35e0bfeacc Fix DeIndexTexture 2022-04-15 00:56:25 +02:00
Henrik Rydgård
e6df3ab23a Comments 2022-04-15 00:56:25 +02:00
Henrik Rydgård
9f7e0978a9 AND together colors while decoding, and then check against fullAlphaMask. 2022-04-15 00:56:25 +02:00
Henrik Rydgård
1bbaba4103 Fix some NEON code that had bad compile-time checks (and some didn't compile) 2022-04-15 00:54:44 +02:00
Henrik Rydgård
584e94f01e ARM32: Remove a lot of non-NEON fallback paths 2022-04-13 11:44:55 +02:00
Henrik Rydgård
f54ed3757c Always use the stable quick tex hash. Doesn't actually make a difference except on new CPU archs. 2022-04-13 11:18:18 +02:00
Henrik Rydgård
e6fe31365a Remove more function defines 2022-04-13 10:02:16 +02:00
Henrik Rydgård
a68ddd0a8d Merge separate NEON functions into the normal functions.
We no longer support non-NEON ARM.

It's nice also to have the NEON and SSE implementations "close" to each
other, easier to port optimizations back and forth etc.
2022-04-12 23:43:21 +02:00
Unknown W. Brackets
b71f17586e Switch: Avoid loading Vulkan. 2022-04-02 16:34:13 -07:00
Unknown W. Brackets
f2bba34f84 softgpu: Combine memcpy into single. 2022-03-20 12:05:31 -07:00
Unknown W. Brackets
7389a36fad softgpu: Avoid unnecessary clearMode checks.
Already baked into the flag.
2022-03-20 12:05:31 -07:00
Henrik Rydgård
6dce4f573c
Merge pull request #15440 from unknownbrackets/softgpu-32bit
softgpu: Plug bad leak of bin queue data
2022-03-13 21:56:58 +01:00
Unknown W. Brackets
374ccafa73 softgpu: Plug bad leak of bin queue data. 2022-03-13 13:34:37 -07:00
Unknown W. Brackets
a3f682fc5a softgpu: Reduce memory usage on 32-bit. 2022-03-13 13:34:14 -07:00
Unknown W. Brackets
e68b16af69 softgpu: Enure aligned bin queues.
On 32-bit, we still want these aligned to 16 bytes.
2022-03-13 13:33:19 -07:00
Unknown W. Brackets
163fa352e8 softgpu: Avoid some unaligned access on x86_32. 2022-03-13 12:44:58 -07:00
Unknown W. Brackets
ffbd9bbe98 Global: Fix some int/size_t conversion warnings. 2022-03-13 12:03:48 -07:00
Henrik Rydgård
7cab540fca Short circuit the texture replacement code 2022-03-08 19:56:06 +01:00
Henrik Rydgård
d50da7dc55 Don't track small wide-stride block transfers 2022-03-08 19:46:00 +01:00
Unknown W. Brackets
da4b9e82f3 softgpu: Fix build with basic logging. 2022-03-05 00:08:09 -08:00
Unknown W. Brackets
539e2bbbf8 Debugger: Track unchanged VRAM to avoid copy.
See #15251, the framedump here reused a VRAM texture for many draws, and
this caused it to recopy the texture over and over again.  Use a flag to
skip if possible.
2022-02-20 13:51:40 -08:00
Henrik Rydgård
eb765a80f8
Merge pull request #15411 from unknownbrackets/softgpu-range
softgpu: Apply region x2/y2 as a scissor
2022-02-20 21:42:00 +01:00
Unknown W. Brackets
1d0936ea79 Debugger: Improve drawing range in softgpu.
We don't always want all of region, particularly if scissor is a regular
screen size.  This improves debugging in GoW.
2022-02-20 12:21:48 -08:00