Unknown W. Brackets
c37c078254
Vulkan: Only force 32-bit if needed.
...
If there are mips already, we can keep 16-bit.
2021-09-13 00:07:01 -07:00
Unknown W. Brackets
d9f62d690a
Vulkan: Expand 16-bit textures to generate mips.
...
When using "Auto Max Quality", we can't use 16-bit formats.
See #14804 .
2021-09-13 00:03:42 -07:00
Henrik Rydgård
5dab9994b6
Bezier/Spline: Fix logical error (must flush buffered data before we modify submitType).
...
Should fix #14774
2021-09-07 23:52:06 +02:00
Henrik Rydgård
e2b0137400
VK: Only autogenerate mipmaps for R8G8B8A8 format textures.
...
Quickfix for bug with Auto High Quality texture filtering.
Fixes #14804 (good enough for now at least).
2021-09-07 23:41:03 +02:00
Henrik Rydgård
1df31e9304
Fix windows menus for the new tex filtering options.
2021-09-05 23:54:41 +02: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
Bram Verweij
a31cbe42d2
Rename namespace to PPSSPP_VK, remove indentation
2021-08-21 12:39:15 +02:00
Bram Verweij
cc00a4132d
Prevent dlopen collisions between ppsspp_libretro.so and libvulkan.so
2021-08-20 11:22:57 +02:00
Henrik Rydgård
bd15ae4f75
Fix bug in homebrew store with files with "." in their names.
...
Also, move the homebrew store button to the top bar instead of the
bottom of the list.
2021-07-12 11:55:15 +02:00
Henrik Rydgård
deee9f9720
Unify the Vulkan format definitions / swizzles
...
To make the next attempt at #14602 easier.
2021-07-11 11:26:40 +02:00
Henrik Rydgård
3595e092c9
Turn off all 16-bit formats if B5G6R5 format is not available.
...
Works around #14602 for now.
2021-07-10 23:33:46 +02:00
Henrik Rydgård
7e048dbbff
Revert "Merge pull request #14588 from hrydgard/vk-correct-565-format"
...
This reverts commit 43c16f1ea2
, reversing
changes made to 25cfb92a9c
.
2021-07-10 20:01:16 +02:00
Henrik Rydgård
4c9b5ada0f
Address feedback
2021-07-09 21:09:44 +02:00
Henrik Rydgård
9a2e220e0d
Vulkan: Use the mandatory-support RGB565 format and not the opposite one.
...
Had apparently misread the spec.
Fixes validation (and probably rendering) errors on Linux/Intel.
https://www.khronos.org/registry/vulkan/specs/1.2/html/chap33.html#features-required-format-support
2021-07-07 19:07:29 +02:00
Henrik Rydgård
81f0c3a8e4
Address feedback (except the mailbox refcount)
2021-06-13 10:16:53 +02:00
Henrik Rydgård
3be5c7bd9a
Make the minimum items per thread explicit. Found some bugs, optional arguments are evil.
2021-06-12 21:21:28 +02:00
Henrik Rydgård
73871b9b7e
Implement new thread manager, port stuff to it.
2021-06-12 13:03:53 +02:00
Henrik Rydgård
a40b1dec5f
Use Path for fullName in dirlisting. Bugfixes.
...
Buildfixes
UWP: Buildfix.
headless: Buildfix.
Common: Buildfix.
iOS: Buildfixes.
libretro: Buildfix.
Qt: Buildfix.
2021-05-13 10:39:16 +02:00
Henrik Rydgård
025bcb1673
Introduce Path, start using it all over the place.
...
Still lots left to convert!
Convert GetSysDirectory to return Path.
More buildfixing
Remove unnecessary Path( constructors
2021-05-13 10:39:16 +02:00
Unknown W. Brackets
de46b0998a
GPU: Correctly initialize HW tessellation support.
...
Oops, shouldn't call a virtual in a constructor.
2021-05-08 09:10:23 -07:00
Unknown W. Brackets
8a8328c431
Common: Move ColorConv to a more appropriate place.
2021-05-01 11:20:05 -07:00
Henrik Rydgård
4e1bc2b3e0
Further std::string removal
2021-03-13 17:55:07 +01:00
Henrik Rydgård
f8ad621df5
PipelineManagerVulkan: Log shader source when pipeline creation fails.
2021-03-08 00:12:38 +01:00
Unknown W. Brackets
82a7a26409
GPU: Look up replaced filtering options.
2021-02-27 17:17:21 -08:00
Henrik Rydgård
2f3bc2d373
Merge pull request #14056 from unknownbrackets/debugger-mem
...
Track memory allocations and writes for debug info
2021-02-21 10:18:11 +01:00
Unknown W. Brackets
557bf0d963
TexCache: Check for videos rendered as slices.
...
In a few places, we were checking only the start address of the video.
2021-02-20 20:59:04 -08:00
Unknown W. Brackets
10a77d29ab
Debugger: Track texture usage too.
2021-02-15 15:01:23 -08:00
Unknown W. Brackets
ae474f5f18
GPU: Correct some field shadowing.
2021-02-15 12:00:29 -08:00
Unknown W. Brackets
e85a8b0f5b
Global: Cleanup class init order warnings.
2021-02-15 11:59:45 -08:00
Unknown W. Brackets
f32f89dd90
Global: Remove some unused variables.
2021-02-15 11:59:45 -08:00
Henrik Rydgård
c48bdf7efc
Vulkan: Fix image layout issues after compute shader uploads.
...
We're already in GENERAL so probably not worth to transfer to DST just
to do even more transfers due to the silliness of GenerateMip.
I'm planning to rework the whole texture upload thing to be far more
optimal with some kind of TextureUploadManager
Fixes #13987
2021-01-30 23:09:42 +01:00
Unknown W. Brackets
c630d365cd
Vulkan: Allow tex shaders to specify a max scale.
2021-01-28 01:03:02 -08:00
Henrik Rydgård
136c861d17
Merge pull request #13972 from unknownbrackets/clear-stencil
...
GPU: Respect stencil write mask for 5551 buffers
2021-01-25 09:38:16 +01:00
Unknown W. Brackets
9857e8d1b1
GPU: Respect stencil write mask for 5551 buffers.
...
If the mask is 0x7F on 5551, that's equivalent to allowing the clear
entirely. See #13391 .
2021-01-24 15:54:13 -08:00
Unknown W. Brackets
97b68e6964
Vulkan: Prevent scaling shader leak.
...
No need to recreate if they haven't changed.
2021-01-18 13:31:43 -08:00
Unknown W. Brackets
a73c15babc
GPU: Correct shader gen with weights as floats.
...
For now, this supports the option. We should probably just move to
everything being floats, but we already prefer software skinning.
Fixes #13903 .
2021-01-10 08:52:28 -08:00
Unknown W. Brackets
4240fa3053
GPU: Correct some incorrect deallocations.
2021-01-01 15:43:13 -08:00
Henrik Rydgård
16f629df3e
Split the DepthRangeHack compat setting into itself and DisableRangeCulling
...
Most of our uses of DepthRangeHack was just to get DisableRangeCulling anyway -
and we don't want that on when not needed.
Also disables range culling for Splinter Cell Essentials (see #13035 )
We really need to understand range culling better. This is a "ship hack" for 1.11.
2020-12-26 19:56:49 +01:00
Henrik Rydgård
7de7680416
Apple driver bug workaround. See issue #13451
2020-12-16 14:39:08 +01:00
Henrik Rydgård
559ccd9f33
Minor cleanups
2020-12-14 20:06:06 +01:00
Henrik Rydgård
f3ebd6553d
Turn off vertex range culling in bezier/spline calls.
...
When we do lower res tess than the real PSP, we cant trust the game to not cause range culling to kick in.
Fixes #11692
2020-12-13 16:04:16 +01:00
Henrik Rydgård
0c66f6c6d0
Assorted drive-by code cleanup
2020-12-13 00:20:47 +01:00
Henrik Rydgård
9818c8aabd
Better debug names for BlitFramebuffer operations.
2020-11-28 13:45:26 +01:00
Henrik Rydgård
3c2733d8eb
Adreno/OpenGL: Limit shader depal to 6xx series GPUs. Should help #13668 .
...
Also make a function static.
2020-11-22 18:00:07 +01:00
Henrik Rydgård
575ae376a9
Don't try to texture from depth if not supported by backend. Works around #13621
2020-11-10 23:36:33 +01:00
Henrik Rydgård
6310af25fa
Get shader color write masking going on all backends.
2020-11-08 23:45:47 +01:00
Henrik Rydgård
3e06eaccfb
Fix some comments
2020-11-08 14:57:35 +01:00
Henrik Rydgård
793e89d2e3
Fix some comments, rename a function.
2020-11-08 14:34:04 +01:00
Henrik Rydgård
391b8155c5
More work on detangling the concepts and making things make more sense.
2020-11-08 13:14:23 +01:00
Henrik Rydgård
3d289594f9
ShaderBlend and FramebufferRead are separate concepts. Reflect that in naming.
...
The former has forms that don't need to read the framebuffer.
This exposes that some logic is wrong...
2020-11-08 12:54:05 +01:00