Commit graph

361 commits

Author SHA1 Message Date
Henrik Rydgård
26884150d7 Remove the 0th descriptor set, move everything else back to 0 2022-12-16 13:05:40 +01:00
Unknown W. Brackets
f44852bb18 Global: Cleanup virtual/override specifiers.
Also missing virtual destructors, hidden non-overrides, etc.
2022-12-10 21:13:36 -08:00
Henrik Rydgård
cdb830f390 Minor optimization/cleanup 2022-12-10 12:05:40 +01:00
Henrik Rydgård
40ae99073b Remove std::string from VulkanTexture 2022-12-01 12:17:03 +01:00
Henrik Rydgård
96a5c52037 Vulkan: Reserve descriptor set 0 for frame-global data, move everything else to set 1 2022-10-28 09:39:56 +02:00
Henrik Rydgård
524e92374f Use arrays more consistently. 2022-10-27 11:05:59 +02:00
Henrik Rydgård
9b8a5d1db3 Rename GPU_SUPPORTS_ to GPU_USE_ 2022-10-17 08:47:03 +02:00
Henrik Rydgård
daca0b2109 Rename gstate_c.Supports to gstate_c.Use 2022-10-17 08:46:37 +02:00
Unknown W. Brackets
416265431b GE Debugger: Display if tex is framebuf.
Rather than guessing based on size, let's show explicitly.
2022-10-10 22:35:42 -07:00
Unknown W. Brackets
fc9f200224 GE Debugger: Centralize current fb tex fetch code. 2022-10-10 21:50:53 -07:00
Unknown W. Brackets
c76d31dfa8 GPU: Cleanup unused CheckAlpha() funcs. 2022-09-24 02:00:03 -07:00
Henrik Rydgård
d6d7a15d25 Get depal-from-dynamic-CLUT working 2022-09-14 22:18:35 +02:00
Henrik Rydgård
abd58199ce Add way to bind cached textures to a DrawContext 2022-09-14 22:18:35 +02:00
Henrik Rydgård
0ed1f3d461 Switch multiple bools as parameters to DecodeTextureLevel to a flags enum. 2022-09-14 18:40:08 +02:00
Henrik Rydgård
75efcd9dfd
Merge pull request #16000 from unknownbrackets/gedebugger
Cleanup some crashes in GE debugger or with large textures
2022-09-11 19:41:11 +02:00
Henrik Rydgård
694dbe1271 Add ShaderDepalMode enum, use in shader ID. Replaces smoothed bit. 2022-09-11 14:40:01 +02:00
Unknown W. Brackets
6c6d817ce7 Vulkan: Avoid crash if large texture attempted.
Doesn't do the clamp/wrap thing, but at least this won't crash.
2022-09-10 20:14:37 -07:00
Unknown W. Brackets
c5fbb400de Replacement: Detect OOM even with replacements.
Also allow saving video textures if so configured.
2022-09-01 19:05:20 -07:00
Unknown W. Brackets
1033fa6cd7 Vulkan: Prevent saving tex during replace load. 2022-09-01 18:52:52 -07:00
Henrik Rydgård
2bf0c86ac7 Fix image format when dumping textures.
Fixes #15831
2022-09-01 15:04:59 +02:00
Henrik Rydgård
11d4f9acb6 Fix texture saving for Vulkan 2022-09-01 15:04:59 +02:00
Henrik Rydgård
08eaf7665c Fix race condition in replacement texture loading
The texture could become valid during the load, causing an inconsistent
state within the texture loading. So can only check for valid-ness once.
2022-08-30 12:52:31 +02:00
Henrik Rydgård
6f2966f502 Clean up mip size calculations
Calculating the same thing in multiple places is a recipe for bugs, so
let's not.
2022-08-30 12:05:57 +02:00
Henrik Rydgård
b529d26f3a Fix smoothed depal on GLES. Don't enable filtering if not using. 2022-08-24 13:43:41 +02:00
Unknown W. Brackets
7ec62a32b4 GPU: More consistently clear ptrs on DeviceLost().
Rather get a null pointer crash than confusing buggy use-after-free
excitement.
2022-08-23 20:15:30 -07:00
Henrik Rydgård
5084743bbb Use Draw2D for depal shaders (except the actual blit, for now) 2022-08-23 11:21:40 +02:00
Henrik Rydgård
6558bde0f6 Remove SmoothedDepal compat setting, instead detect the ramp directly. 2022-08-22 15:24:41 +02:00
Henrik Rydgård
b39b74e602 More renaming. Fix shader view for Vulkan 2022-08-22 12:30:51 +02:00
Henrik Rydgård
82a6c42e17 DepalettizeCommon -> TextureShaderCommon. Simplifications. 2022-08-22 12:21:20 +02:00
Henrik Rydgård
3c307c9857
Merge pull request #15884 from unknownbrackets/texreplace-io-async
Replacement: Read files only within time budget
2022-08-22 11:10:16 +02:00
Unknown W. Brackets
e473eb9f5e Replacement: Read files only within time budget.
When delayed texture load is enabled.  Intended to reduce IO delays on
Android.
2022-08-21 22:07:05 -07:00
Unknown W. Brackets
73c06bb776 Replacement: Be more consistent about base level. 2022-08-21 22:03:16 -07:00
Unknown W. Brackets
89a499b4d2 GLES: Correct preview of mip levels > 0.
Don't need to force level 0 anymore.  Software can show levels hardware
refuses to load.  This is consistent with other backends.
2022-08-21 16:47:46 -07:00
Henrik Rydgård
295f5f391e More consistent handling of lack of depth texture support. Small log improvement. 2022-08-20 08:05:53 +02:00
Henrik Rydgård
1913930541 Careful with mipmaps on old OpenGL ES. Lost this check in the refactor, made it clearer than before at least.
Fixes Burnout rendering issue mentioned in #15818
2022-08-09 17:26:39 +02:00
Henrik Rydgård
ded8ba8806 More cleanup, fixes. 2022-08-06 18:27:04 +02:00
Henrik Rydgård
4e3c258140 Delete all the duplicate implementations of ApplyTextureFramebuffer 2022-08-06 18:27:03 +02:00
Henrik Rydgård
b5597d1013 Remove Vulkan2D 2022-08-06 18:27:03 +02:00
Henrik Rydgård
45def772ee Move the depal cache instance ownership to TextureCacheCommon 2022-08-06 18:27:03 +02:00
Henrik Rydgård
87b128ecaf Compiles on Vulkan, but doesn't yet work. 2022-08-06 18:27:03 +02:00
Henrik Rydgård
e345a6ba3c Works with D3D11, except the depth texturing case 2022-08-06 18:27:03 +02:00
Henrik Rydgård
2fa9b0d0c7 Simplify 2022-08-06 18:27:03 +02:00
Henrik Rydgård
d5a0249678 Fix upscaling in Vulkan. Fixes #15779 2022-08-03 22:22:24 +02:00
Henrik Rydgård
9437d5e3b0 Fix small breakage in Vulkan texture decoder 2022-08-01 11:29:25 +02:00
Henrik Rydgård
99b4e7c54c Vulkan: Don't try to auto-mipmap 3D textures in max quality filter mode 2022-08-01 00:16:57 +02:00
Henrik Rydgård
0262fbc70a Implement 3D textures for D3D11 2022-07-31 10:43:48 +02:00
Henrik Rydgård
e455d6bcfe Some safety checks to avoid bad combinations, probably not really needed in practice. 2022-07-31 10:43:48 +02:00
Henrik Rydgård
176b460d76 Quick attempt at fixing the Macross glitch 2022-07-31 10:43:48 +02:00
Henrik Rydgård
f061eadc04 Initial implementation of 3D texturing through equal-size mips (see #6357)
Vulkan-only currently, though all the other backends except ES 2.0
without GL_OES_texture_3d can support it with some work.
2022-07-31 10:43:47 +02:00
Unknown W. Brackets
795b1c04a9 GPU: Small scaling variable cleanup. 2022-07-30 18:18:51 -07:00