Henrik Rydgård
5d5e5fe6ff
Remove some outdated debugging code (SetDebugTexture)
2020-09-13 12:18:38 +02:00
Henrik Rydgård
a28954d311
Further simplify framebuffer matching.
2020-09-13 09:03:31 +02:00
Henrik Rydgård
f6db1c2b01
Show how many times we evaluate framebuffers per frame in debug statistics.
2020-09-12 15:37:03 +02:00
Henrik Rydgård
61d792e27a
Re-fix BOF III - accidentally lost the texaddr offset
2020-09-12 15:25:54 +02:00
Henrik Rydgård
f7feca96a7
Mostly fix Katamari by boosting fbs from the same frame
2020-09-12 14:53:33 +02:00
Henrik Rydgård
41eee6a1a4
Decouple framebuffers from texcache entries entirely.
2020-09-12 14:25:50 +02:00
Henrik Rydgård
c7a5f45f81
Remove fbCache_ from TextureCacheCommon.cpp.
2020-09-12 12:37:05 +02:00
Unknown W. Brackets
cbeeb8fdf1
GPU: Allow culling in through mode.
...
It works per tests and is used in Soul Caliber. Fixes #13400 .
2020-09-08 15:52:01 -07:00
Unknown W. Brackets
a817a60382
TexCache: Correct detaching textures.
2020-09-07 15:10:26 -07:00
Unknown W. Brackets
ee6fbd9a0b
TexCache: Rename "Invalid" attach to "Inexact".
...
The name has seemed confusing to me for a while.
2020-09-06 23:04:52 -07:00
Unknown W. Brackets
85fb9a61e8
TexCache: Always apply detach matches if found.
...
The "Invalid" matches will only apply if nothing was attached, so it's
important that detaches happen.
2020-09-06 23:01:13 -07:00
Henrik Rydgård
5697b6a9c5
Look in the mirrors or not depending on whether the texture's address is in the mirrors (detected as a depth texture).
...
Also removes reporting that no longer makes sense.
2020-09-01 23:05:15 +02:00
Henrik Rydgård
a1e5f1b052
When going the other way, there can be multiple textures that need updating.
2020-09-01 22:54:36 +02:00
Henrik Rydgård
a22181df1c
Partially fix Katamari (flicker due to choice of the wrong depth buffer still happening).
2020-09-01 22:54:36 +02:00
Henrik Rydgård
5043f05687
Oops, crashfix for late change
2020-08-31 10:37:28 +02:00
Henrik Rydgård
064f2b6d01
Add some ONCE-reporting of multiple candidate situations
2020-08-31 09:42:15 +02:00
Henrik Rydgård
4252036d89
Apply the scoring model when creating/updating framebuffers too.
...
Reuses the same mechanism.
This is the second part of the Test Drive fix.
2020-08-30 16:21:56 +02:00
Henrik Rydgård
a70ea98475
Switch framebuffer matching to a scoring model.
2020-08-30 16:21:56 +02:00
Henrik Rydgård
e9ff037e91
Extract AttachFramebufferToEntry function
2020-08-30 16:21:56 +02:00
Henrik Rydgård
41fe6f9e12
Delete an unused buffer, saving 0.5MB of RAM.
2020-08-28 10:38:00 +02:00
Henrik Rydgård
13552550bc
Merge pull request #13330 from unknownbrackets/gpu-clear
...
TexCache: Force recreate texture on detach
2020-08-24 07:24:04 +02:00
Unknown W. Brackets
f44717c4f5
TexCache: Force recreate texture on detach.
...
We could have multiple detaches, and we delete the texture on attach, so
we really must make sure we recreate.
Fixes #13320 .
2020-08-23 21:29:53 -07:00
Henrik Rydgård
055588c1a1
Framebuffer manager refactor step 1: Split ApplyFramebuffer into Match and Apply steps.
...
This should have no change in behavior, but prepares the ground for the
next steps. Want this merged separately.
2020-08-24 00:01:02 +02:00
Henrik Rydgård
35c5308c30
Framebuffer matching: Don't try to match depth buffers with color if the swizzle bits don't indicate it.
...
Fixes God of War issue reported in a comment of #13317 .
2020-08-23 22:11:18 +02:00
Henrik Rydgård
48ba304a4a
Minor logging improvements
2020-08-10 20:17:01 +02:00
Henrik Rydgård
0aa2ceb372
Address feedback
2020-08-10 09:16:28 +02:00
Henrik Rydgård
ba0d04a142
Vulkan: Implement depth texturing through depal.
2020-08-09 20:31:04 +02:00
Henrik Rydgård
c24dad2ac4
Logging improvement
2020-08-06 14:33:29 +02:00
Henrik Rydgård
8e1caadb48
Remove some unnecessary reporting.
2020-08-06 10:20:27 +02:00
Henrik Rydgård
09e300e646
Be a little more aggressive discarding non matching framebuffers when texturing. Enable create framebuffer from copy, fixing #12345
2020-08-04 14:51:37 +02:00
Henrik Rydgård
58ef0c8e80
Texture from framebuffer: Logging improvements
2020-08-04 14:45:14 +02:00
Henrik Rydgård
d57edfbdac
Rename FramebufferCommon.cpp/h to FramebufferManagerCommon.cpp/h for consistency
2020-08-03 23:17:22 +02:00
Henrik Rydgård
c5e0b799d9
Remove category from _assert_msg_ functions. We don't filter these by category anyway.
...
Fixes the inconsistency where we _assert_ didn't take a category but
_assert_msg_ did.
2020-07-19 20:33:25 +02:00
Unknown W. Brackets
7024a2877d
GPU: Take A off RGB565 conversion funcs.
2020-05-13 18:17:58 -07:00
Unknown W. Brackets
884a64b932
GPU: Cleanup skip buffer texture draws.
...
These will be used when a game does multiple transfers from RAM to the
screen, rather than one big one. Wasn't clearing some state, though.
2020-05-13 18:10:09 -07:00
Unknown W. Brackets
16e47f6333
GPU: Calc framebuf offset with right params.
...
It has nothing to do with the target or source framebuf, oops.
2020-05-07 23:22:51 -07:00
Unknown W. Brackets
48980d8786
GLES: Simplify the framebuf offset detection.
...
It's clearly not been understood well as changes were made, so let's dump
a bunch of comments on it.
2020-05-07 23:12:14 -07:00
Unknown W. Brackets
ad98609819
GPU: Use consistent buffered rendering state.
...
The setting can be changed in Qt and Windows between frames, so let's
track the current setting in most places. This is everywhere fbman is
easily accessible.
2020-04-04 10:51:47 -07:00
Unknown W. Brackets
c7a27ed9af
GPU: Fix memory corruption with bufw > w.
...
Seen for example in Mecho Wars.
2020-03-19 20:56:02 -07:00
Henrik Rydgård
9c4649d3ac
Assorted cleanup
2019-09-27 23:25:30 +02:00
Henrik Rydgård
2f26297062
Clean up some more ifdefs
2019-05-10 23:25:57 +02:00
driver1998
5072584781
Fix neon headers for MSVC ARM64
...
MSVC uses arm64_neon.h for ARM64, arm_neon.h is ARM32 only.
2019-05-04 22:45:15 +08:00
Henrik Rydgård
15f2e48887
Only mask away Z mirrors if inside VRAM
2018-11-12 08:19:19 +01:00
Henrik Rydgård
d8f4a70396
Remove constraint that virtual framebuffers have to represent VRAM.
...
Prerequisite for #11531 , virtual readbacks.
2018-11-12 08:19:14 +01:00
Unknown W. Brackets
a4c0640f01
GE Debugger: Factor out host calls some.
...
Moving more of this to cross platform for the web debugger.
2018-09-01 08:32:03 -07:00
Unknown W. Brackets
00daa00ae5
TexCache: Keep maxSeenV on clut variants in sync.
...
This ensures that we detect changes properly even when they are outside
the max V used with one CLUT.
Fixes #9355 , enemy fade out in FF2.
2018-08-29 22:07:27 -07:00
Unknown W. Brackets
3f48e446b6
GPU: Fix texture handling on framebuf detach.
...
We were never creating/recreating the texture, so we ended up with null.
Caused all sorts of problems.
2018-08-25 09:57:37 -07:00
Unknown W. Brackets
fd183715ec
Vulkan: Decimate when there are many slabs.
...
This helps avoid one little texture holding onto a whole slab.
Won't change behavior when they are full, since then the cacheSizeEstimate
should be fairly high.
2018-04-06 21:42:32 -07:00
Henrik Rydgård
c41273d333
When binding a framebuffer to a texcache entry, delete its texture. Should help #10823
2018-03-29 13:29:09 +02:00
Henrik Rydgård
f967e206b8
Remove the last remains of the idea that textures can be efficiently updated instead of recreated. Accidentally fixes #10697 somehow.
...
Also this is good for terminology, no more confusion with the texture
replacement facility :)
2018-03-25 10:50:37 +02:00