Commit Graph

498 Commits

Author SHA1 Message Date
Henrik Rydgård
5c42aa07fc Minor log improvement 2023-08-28 16:11:47 +02:00
Henrik Rydgård
a529a9c408 Improve the logging in the CLUT load path 2023-08-28 14:39:24 +02:00
Henrik Rydgård
16d073c4ad Add compat flag to not load CLUTs from old framebuffers 2023-08-24 10:30:37 +02:00
Henrik Rydgård
714558853c Enable anisotropic filtering for replacement textures with mipmaps 2023-08-18 15:21:07 +02:00
Henrik Rydgård
a32249a3cf Move DebugOverlay rendering to the overlay screen, allowing drawing it on top of the menu 2023-08-03 16:19:18 +02:00
Henrik Rydgård
fc6879674e Refactor overlays into an enum 2023-08-02 13:03:04 +02:00
Henrik Rydgård
def09bf575 Update the uvscale uniform a bit more conservatively on framebuffer changes
Plus fixes a few minor oversights

Fixes #17581 and possibly #17522
2023-06-15 11:57:30 +02:00
Henrik Rydgård
80e47b7bd3 Only dirty the uniform UVSCALEOFFSET when really needed
Broken out from #17479

With OpenGL, greatly reduces the amount of glUniform4fv calls in many games (and
similar in the other backends).
2023-05-25 15:00:57 +02:00
Henrik Rydgård
bdd0eeb7c3 Avoid double texture cache load.
Texture packs are loaded from NotifyConfigChanged which is called
anyway.

Fixes #17381
2023-05-01 23:52:39 +02:00
Henrik Rydgård
484f2c5954 Fix texcoord issue with SOCOM post effect 2023-04-25 23:02:12 +02:00
Henrik Rydgård
9a3ff69091 Workaround for some SOCOM game's misuse of CLUT8 textures.
Emulating this correctly would be possible too but would only work at 1x
rendering resolution.
2023-04-17 09:34:26 +02:00
Henrik Rydgård
b90833a462 OpenGL texture filtering: enforce key.mipEnable when we're forcing mips.
Fixes #17268, but I feel we could possibly get rid of the bool entirely
since we have maxlevel. Only GL and D3D even looks at this flag.

Oh well, that's for later.
2023-04-14 14:36:07 +02:00
Герман Семенов
122b63b9a8 GPU: using if constexpr C++17 optimization 2023-04-02 16:36:37 +02:00
Henrik Rydgård
5332850b00 More accurate check for LoadCLUT from framebuffer margins.
Fixes #16819
2023-03-31 21:24:21 +02:00
Henrik Rydgård
4e41233bb7 Replacement: Save textures even if already replaced, if the png is missing.
Fixes #17182

Not exactly sure what behavior we really want, but I think this one is
OK, and at least more similar to the old one. Now we save
already-replaced textures if the named replacement texture is missing, and there
isn't already a hash-named one in new or the "root".
2023-03-27 15:43:18 +02:00
Henrik Rydgård
f5e8d39e42 Force mipmapping on when drawing using replacement textures that contain mipmaps. 2023-03-18 15:01:53 +01:00
Henrik Rydgård
3302e6a76b Lookup filtering overrides at texture load time instead of at runtime. 2023-03-18 13:03:05 +01:00
Henrik Rydgård
9a228b1f23 Avoid calling FindReplacement unnecessarily. 2023-03-18 12:03:32 +01:00
Henrik Rydgård
97c9b9e4f7 Break out PollReplacement from TextureCacheCommon::FindReplacement 2023-03-18 12:01:24 +01:00
Henrik Rydgård
75bcb9b10c Some renaming, flag updates 2023-03-18 11:46:22 +01:00
Henrik Rydgård
5f76fbe1ad Implement padding-on-copy for compressed textures as well. 2023-03-17 14:00:14 +01:00
Henrik Rydgård
1b0d5ec3aa Remove a unused state from ReplacedTexture, rename POPULATED to UNLOADED 2023-03-17 00:52:38 +01:00
Henrik Rydgård
35f46ec161 Rework the replacement cache. No more duplicate ReplacedTexture objects. 2023-03-16 11:46:05 +01:00
Henrik Rydgård
cf6cce0744 Remove scaleFactor from struct ReplacedTextureDecodeInfo, instead pass in both unscaled and scaled dimensions 2023-03-16 10:21:57 +01:00
Henrik Rydgård
f2a5a5abe7 Avoid input/output arguments in the texture scaler too 2023-03-16 10:14:41 +01:00