Henrik Rydgård
41eee6a1a4
Decouple framebuffers from texcache entries entirely.
2020-09-12 14:25:50 +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
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
7f812a5d9a
GPU: Hash CLUT using XXH3 with replacements off.
...
It's faster, but if texture replacements are enabled, we want the hash to
stay the same.
2020-08-27 20:46:39 -07:00
Henrik Rydgård
5d64fc5ff1
Switch to PPSSPP's assert functions (don't use the system's)
2020-08-16 10:01:10 +02:00
Unknown W. Brackets
1e2f87a6d2
Vulkan: Fix tex upscaling 4444 swizzling.
2020-08-15 10:12:34 -07:00
Henrik Rydgård
ba0d04a142
Vulkan: Implement depth texturing through depal.
2020-08-09 20:31:04 +02:00
Henrik Rydgård
fbf6008a03
Set debug names for more framebuffers and textures
2020-08-09 09:36:54 +02:00
Henrik Rydgård
58ef0c8e80
Texture from framebuffer: Logging improvements
2020-08-04 14:45:14 +02:00
Henrik Rydgård
882cc6295e
Rename FramebufferVulkan.cpp/h to FramebufferManagerVulkan.cpp/h
2020-08-03 23:22:11 +02:00
Henrik Rydgård
de178d617b
Move a line to a better place
2020-08-03 23:14:27 +02:00
iota97
ce2fc7d986
Fix texture upscaling and per game setting fix/cleanup
2020-08-03 16:04:23 +02:00
Unknown W. Brackets
d99e67a061
Vulkan: Allow custom texture upscaling shaders.
...
Let's not just hardcode.
2020-08-01 22:00:04 -07:00
BreadFish64
b0a073b4bb
Fix alpha channel handling in xBRZ texture filter shader
2020-07-29 16:29:31 -05: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
Henrik Rydgård
737688a22a
Annotate calls to RebindFramebuffer with their cause.
2020-06-02 09:51:38 +02:00
Henrik Rydgård
fabe987c8f
Add a name tag for all render steps (GL/Vulkan). Helps with debugging and should be cheap enough (a single pointer per "step").
2020-05-21 11:24:05 +02:00
Unknown W. Brackets
ac909d2192
Vulkan: Ensure scaling happens in cached RAM.
...
There's a non-trivial performance impact to using uncached coherent
memory, which is usually what we get for the push buffer.
2020-03-08 12:02:46 -07:00
Henrik Rydgård
63f06cdd91
Address some feedback, thanks unknown
2020-03-01 18:41:09 +01:00
Henrik Rydgård
0da04f3694
Vulkan: Support devices that don't properly support 16-bit texture (like MoltenVK).
...
Fixes #12615 .
Will make finishing #10654 worthwhile.
2020-03-01 14:07:13 +01:00
Unknown W. Brackets
5009698cc0
Core: Use a shared_ptr for i18n categories.
...
This does not make them thread safe, but it reduces the chances of a crash
a bit (see #12594.)
2020-02-09 07:35:16 -08:00
Unknown W. Brackets
be5d93d5f1
Vulkan: Compile compute shaders only if enabled.
2019-09-30 00:39:00 -07:00
Unknown W. Brackets
41a6831333
Vulkan: Add a setting for hardware scaling.
2019-09-30 00:35:50 -07:00
Unknown W. Brackets
7fa05a3181
Vulkan: Initial 16-bit texture shader decode.
2019-09-30 00:35:14 -07:00
Unknown W. Brackets
6613312ecc
Vulkan: Add 4xbrz texture shader.
2019-09-30 00:34:53 -07:00
Henrik Rydgård
eeec18c018
Make the barrier a bit more focused. Up some limits.
2019-09-29 10:55:49 -07:00
Henrik Rydgård
080f34acfe
Need a barrier on Mali. Strange that validation didn't warn...
2019-09-29 10:54:55 -07:00
Henrik Rydgård
e9b2af7fc7
In the computeUpload path, use a shader intrinsic to unpack the color.
2019-09-29 10:54:33 -07:00
Henrik Rydgård
a355f49c91
Also experiment with a "copy shader" that just does raw data manipulation into GPU local memory, then copies to image from there.
2019-09-29 10:39:12 -07:00
Henrik Rydgård
9ed66001c6
Use a plain compute shader for RGBA8888 texture uploads, as a proof of concept.
2019-09-29 10:27:50 -07:00
Henrik Rydgård
e6bec3e555
Vulkan: Add simple manager for compute shaders that upload data to images.
2019-09-29 10:24:48 -07:00
Henrik Rydgård
c1427f5981
VulkanImage: Fix issue where we'd try to free dedicated allocations from the allocator_ instead of Vulkan directly.
...
Snuck in some minor cleanups.
2019-02-24 22:23:26 +01:00
Henrik Rydgard
8e1a5ef3d6
Minor refactor of physical device property/feature detection, to allow for more extension use.
2019-02-05 18:07:17 +01:00
Henrik Rydgård
b037efdb55
If there are multiple Vulkan devices, show a setting to allow the user to choose.
2018-06-06 10:20:12 +02:00
Unknown W. Brackets
8d07e6d985
GPU: Prevent temp FBOs from overwriting each other.
...
Sometimes we'd use two temp FBOs in the same draw (e.g. shader blending +
depal.) This could cause the same temp FBO to get used for two purposes,
causing weird behavior.
2018-05-06 08:57:44 -07:00
Henrik Rydgård
77e574ccc6
Buildfix.
2018-05-04 22:57:13 +02:00
Henrik Rydgård
698bd75209
Fix regression caused by the new depal code for Vulkan. Fixes #10993
2018-05-04 22:24:11 +02:00
Unknown W. Brackets
3eb0450998
Depal: Reapply texture when bounds change.
...
Since we need each slice of the texture when we use bounds to reduce the
size. Fixes #10951 .
2018-04-22 10:43:46 -07:00
Henrik Rydgård
81276c8862
Fix various bugs.
2018-04-13 14:19:05 +02:00
Henrik Rydgård
29c41c6a35
Implement shader depal for Vulkan. See #10908 . Bilinear filter not yet implemented.
2018-04-13 14:19:01 +02:00
Henrik Rydgård
31ae11ecc8
Don't forget to dirty some state after depal. May help #10906 ?
2018-04-12 11:59:18 +02:00
Henrik Rydgård
e784d1a29c
Vulkan: Ease off on the allocator "slab pressure" if texture scaling is enabled.`
2018-04-07 10:40:49 +02:00
Unknown W. Brackets
d07a124a90
Vulkan: Increase base slab allocation size.
2018-04-06 21:43:18 -07:00
Unknown W. Brackets
5f27a2e60a
Vulkan: Track tags on emu textures.
2018-04-06 21:43:18 -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
86966684d4
Vulkan: Remove the wrapper struct around VulkanTexture
2018-04-05 23:23:14 +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
aliaspider
198c946218
remove unnecessary NULL assignment.
2018-03-23 04:14:10 +01:00
aliaspider
fc9a5ff65c
prevent use-after-free.
2018-03-22 22:10:05 +01:00
Henrik Rydgård
22e28e218b
Merge pull request #10411 from hrydgard/gl-render-manager
...
GL render manager - new faster GL multithreading
2018-01-31 12:22:07 +01:00