Unknown W. Brackets
a0eeb52444
softgpu: Decode DXT texels directly.
...
This improves performance a lot compared to decoding the whole block.
Eventually we may implement a cache, but threading makes that complex to
make properly fast.
2021-09-12 09:37:34 -07:00
Henrik Rydgård
6b76bcf070
Add new texture filtering "Auto Max Quality" that tweaks texture filtering for best quality.
...
It does this by enforcing mipmapping and minification filters, and
always autogenerates mipmaps and enforces anisotropic filtering for all
modes (if that's separately enabled).
This looks nice and flicker free in most games without any additional
tweaking, including GTA and Burnout which have long been painfully
flickery in the distance due to undersampling.
Needs a bit more testing before merge, maybe.
Fixes #13888
2021-09-03 00:14:58 +02:00
Unknown W. Brackets
fb3ad1df4b
Replacement: Read in texture filtering overrides.
...
If you're replacing, you can know more information about linear safety for
tests.
2021-02-27 17:16:16 -08:00
Unknown W. Brackets
2be8f86286
GPU: Avoid compile error if ARM64=1 specified.
...
If it's specified, but incorrect, we would compile incorrectly. We're
moving away from it anyway.
2020-08-29 08:18:54 -07:00
Unknown W. Brackets
e32524c544
GPU: Remove ReliableHash aliases.
...
Let's just use XXH32/XXH64 directly in texture replacements, clearer
anyway.
2020-08-28 01:15:22 -07:00
Unknown W. Brackets
30625225b0
GPU: Remove neon xxhash implementation.
...
It's typically around the same speed now with modern compilers, and much
slower than XXH3.
2020-08-27 20:31:09 -07:00
mrfixit2001
53e6fbadf4
fix ifdef vs if defined
2018-11-26 16:02:25 -05:00
mrfixit2001
0ab6c59fbe
Avoid possible compile error: conflicting defs
...
In some cases, depending on the build flags, these two lines can be actively compiled at the same time, resulting in a conflicting definitions error:
https://github.com/hrydgard/ppsspp/blob/master/GPU/Common/DrawEngineCommon.h#L41
https://github.com/hrydgard/ppsspp/blob/master/GPU/Common/TextureDecoder.h#L88
I believe all that's necessary here is to add these "or" clauses to avoid it and safeguard against the error.
2018-11-26 14:59:14 -05:00
Unknown W. Brackets
97773d3dd5
TexCache: Fix texture alignment in GLES.
...
We must align to 4 bytes, and we aren't always aligned to 16 anymore, so
we must check when dealing with swizzle.
2018-09-08 19:00:30 -07:00
Unknown W. Brackets
9fbcc01afa
TexCache: Remove simple 0/1 alpha check.
...
No practical optimizations have come of this, so it's a waste of time.
Slows down Vulkan too.
2017-11-12 16:17:46 -08:00
Henrik Rydgård
6a1fa728d8
Remove Globals.h
2017-08-31 17:15:22 +02:00
Henrik Rydgard
b0cdcfca3c
D3D11: Proper fix for DXT5 crash. May also help #9134 .
2017-02-18 02:41:17 +01:00
Henrik Rydgard
ea5e9f8c35
Fix ARM64 Android build
2016-11-03 22:15:50 +01:00
Unknown W. Brackets
f039259a1a
Use a same-everywhere quick hash for now.
2016-05-01 00:30:43 -07:00
Unknown W. Brackets
3593a7963e
Cleanup and clarify texture swizzling funcs.
2016-03-26 21:55:32 -07:00
Unknown W. Brackets
36c8b043f3
d3d9: Fix CLUT4 optimization color creation.
...
Fixes #8385 .
2016-01-04 07:36:47 -08:00
Unknown W. Brackets
69daa75228
Move more common code around in texcache.
2015-12-31 11:41:02 -08:00
Henrik Rydgard
2430c283a5
More GPU cleaning, removing uses of GPUState.h where not needed.
...
Want to get rid of direct accesses to GPUState in modules that may be reused in
my future next-gen backends, that will reformat display lists into command lists that will
then be optimized and executed, out of sync with the real GPUState.
Candidate modules that may be reused in full are Framebuffer and Depal, possibly TextureCache to some degree.
2015-07-29 12:37:49 +02:00
Unknown W. Brackets
7f8cf7f800
arm64: Use XXH64 for vertex hashing, etc.
...
Based on benchmarks, it performs better than XXH32 on an A57.
2015-07-22 21:38:01 -07:00
Henrik Rydgard
cc6db7a8df
Declare DoTexSwizzle16 outside #ifdef _M_SSE, fixing build on ARM
2015-06-14 11:25:18 +02:00
Unknown W. Brackets
401bd35691
Swizzle video texture data on write to mirrors.
2015-06-13 16:29:56 -07:00
KentuckyCompass
880697f40a
Add NEON versions of the CheckAlpha family
2015-05-25 18:04:52 -07:00
Unknown W. Brackets
c75010931c
Use SSE in CheckAlpha scanning.
2015-05-24 22:55:43 -07:00
Unknown W. Brackets
4880c29a90
Use TextureDecoderNEON funcs statically on arm64.
...
Not sure if they were being used before (HAVE_ARMV7...?)
2015-05-23 11:30:05 -07:00
Henrik Rydgard
c2cf2bd97e
Move some more color conversion functions to ColorConv
2015-04-08 22:52:47 +02:00
Henrik Rydgard
cae58cafee
Revert "Merge pull request #7361 from hrydgard/color-conv-centralize"
...
This reverts commit f1b57dabf5
, reversing
changes made to 41001637ce
.
2015-01-22 19:53:32 +01:00
Henrik Rydgard
2623a48b4a
Centralize color conversion functions in Common/ColorConv.
2015-01-20 17:32:54 +01:00
Unknown W. Brackets
2b16b5b79b
Use XXH64 on 64-bit systems.
...
I'm not able to reproduce any real performance difference, but I know
there are some games which do more hashing and it may help there.
2014-10-26 17:49:24 -07:00
Unknown W. Brackets
e8d5866e5a
Use SSE some in framebuffers to memory.
...
Since people are using it (even though it seems dangerous), might as well
make it faster. 6% better in Tales of Phantasia X.
2014-05-04 01:03:48 -07:00
Unknown W. Brackets
006ed53e73
Use defines on x86/SSE to avoid func pointers.
...
Unfortunately no such luck for Android.
2014-03-25 01:28:09 -07:00
Unknown W. Brackets
b800762ceb
Add a NEON-optimized version of XXH32.
...
This takes at least 40% less time to hash on NEON/ARM devices.
2014-03-25 00:34:55 -07:00
Unknown W. Brackets
b44d10a91e
Move texture unswizzling to decoder, use NEON.
2014-03-22 21:35:16 -07:00
Unknown W. Brackets
15a608a6b9
Check for kernel textures in kernel ram properly.
...
Textures can perfectly legitimately be in volatile ram.
2014-03-01 16:11:56 -08:00
Unknown W. Brackets
4d47ccd5df
Add a NEON version of the tex hash.
...
Should be used only for NEON devices. Currently only compiled on Android.
2013-11-02 02:09:54 -07:00
Unknown W. Brackets
75f2995f25
Move some texture deindexing to GPU/Common/.
2013-09-27 22:46:07 -07:00
Unknown W. Brackets
b4b0b33f57
Move DXT decoding to GPU/Common/.
2013-09-27 22:46:06 -07:00
raven02
96619f6cb1
Missing comma at the end of line
2013-09-19 19:32:53 +08:00
raven02
ec6170d593
Regression fix #3797 - DXT1/3/5 texture bufw
2013-09-19 11:06:12 +08:00
Unknown W. Brackets
f43997a47f
Update bufw handling in all gpus.
...
This fixes the softgpu as well, at least.
2013-09-15 21:27:13 -07:00