Henrik Rydgård
df2f0df155
Make the Vulkan GPU log profiler a runtime developer setting.
...
I keep forgetting to disable the define on commit, this is a better
solution.
2021-12-19 22:50:14 +01:00
Henrik Rydgård
748b8287a6
Add format string support to Vulkan log-profiler
2021-12-19 22:21:34 +01:00
Henrik Rydgård
80ae4b039c
Vulkan: Be more restrictive about texture upscaling on "slow" devices.
...
Applies the same rules as for software upscaling in this case.
Should fix the stutters seen in #15109
2021-12-16 21:00:49 +01:00
Unknown W. Brackets
001d67b711
GPU: Remove explicit rect/line depth cull.
...
This appears to be breaking NFS (#15129 ) and isn't fully correct since
the triangles are still later checked anyway.
2021-12-13 23:07:26 -08:00
Henrik Rydgård
c07068f89b
Fix text wrapping on PromptScreen by improving the layout
2021-12-13 22:42:03 +01:00
Henrik Rydgård
ff887b0f11
Vulkan: Don't generate mipmaps for huge textures (probably menu backgrounds). Other minor fixes.
2021-12-13 09:13:48 +01:00
Henrik Rydgård
b99a5b6613
Minor fixes
2021-12-12 23:21:28 +01:00
Henrik Rydgård
5adf23280c
Turn video upscaling off.
2021-12-12 23:21:28 +01:00
Henrik Rydgård
dc9816ceac
Add hardcoded bool toggle for upscaling video, fix log, remove a comment, minor opt
2021-12-12 23:20:57 +01:00
Henrik Rydgård
10db19efc4
Add a 2x2 downsampled version of 4xBRZ as 2xBRZ (save memory bandwidth)
...
fmt
2021-12-12 23:19:29 +01:00
Henrik Rydgård
3833d935f4
Fixes when profiler is disabled.
...
Typo, validation fix
More fixes
Fix mipgen logging
Disable the logging profiler by default again
Important to use the macro
2021-12-12 12:42:40 +01:00
Henrik Rydgård
9945620504
Switch to macros to easily disable the new profiling. Add missing scope
2021-12-12 12:11:59 +01:00
Henrik Rydgård
55fe21db1e
Add a simple GPU profiler to profile individual events, rather than full passes.
2021-12-12 12:11:54 +01:00
Unknown W. Brackets
ce3e29a649
softjit: Fix a function arg template warning.
...
We're just ignoring it because it's a false positive in this case.
2021-12-11 10:45:27 -08:00
Unknown W. Brackets
0d4ec5ca20
softjit: Fix an enum type comparion error.
...
Same values, though, so didn't matter.
2021-12-11 10:45:27 -08:00
Henrik Rydgård
818f33d979
Merge pull request #15225 from unknownbrackets/softjit-cond-fix
...
softjit: Throw away regs allocated in conditionals
2021-12-11 09:30:43 +01:00
Unknown W. Brackets
5593b8ff64
softjit: Skip a common case CMP.
2021-12-11 00:06:45 -08:00
Unknown W. Brackets
d35ef352c3
softjit: Throw away regs allocated in conditionals.
...
If this happens, the register no longer has a deterministic value.
2021-12-11 00:06:14 -08:00
Henrik Rydgård
b85a7e9a46
Name uniform buffers, add more asserts. Used this to track down the bug fixed in the previous commit.
2021-12-10 21:01:01 +01:00
Henrik Rydgård
7b07a1385a
Merge pull request #15220 from unknownbrackets/vulkan-exit
...
Vulkan: Fix use-after-free on shutdown
2021-12-10 10:37:43 +01:00
Henrik Rydgård
97f3b477ab
Merge pull request #15219 from unknownbrackets/vulkan-2d
...
Vulkan: Avoid desc set error in tests
2021-12-10 10:37:19 +01:00
Unknown W. Brackets
fe7b573a38
Vulkan: Fix use-after-free on shutdown.
2021-12-09 23:52:10 -08:00
Unknown W. Brackets
8d06431ea7
Vulkan: Use new desc sets in Draw and VulkanUtil.
...
It seems like a bug that destory device objects wasn't clearing descSets.
2021-12-09 19:03:17 -08:00
Unknown W. Brackets
1010d7ac0e
Vulkan: Refactor common desc pool handling.
2021-12-09 18:39:55 -08:00
Unknown W. Brackets
75d2188a92
Vulkan: Avoid desc set error in tests.
...
This requires quite a few DrawActiveTextures, but some pspautotests were
triggering it.
2021-12-09 17:43:00 -08:00
Henrik Rydgård
51dce175a3
Merge pull request #15218 from unknownbrackets/softjit-sampler
...
samplerjit: Fix DXT1/DXT5 register releasing
2021-12-09 22:13:48 +01:00
Unknown W. Brackets
b3cd135000
samplerjit: Fix DXT1/DXT5 register releasing.
...
Oops, broke this while refactoring.
2021-12-09 08:17:29 -08:00
Henrik Rydgård
3e5ba249bf
Merge pull request #15217 from hrydgard/scissor-auto-clamp
...
Vulkan is strict about scissor rect, so let's clamp centrally.
2021-12-08 22:55:12 +01:00
Henrik Rydgård
45308a16c0
Vulkan is strict about scissor rect, so let's clamp centrally.
...
Better than spreading the logic all over.
Fixes #15207
2021-12-08 22:38:01 +01:00
Henrik Rydgård
44dc3555ad
FramebufferManagerCommon: Fix some issues where currentRenderVfb_ could get out of sync.
...
It would get out of sync with draw_->GetCurrentFramebuffer(), which led
to checks for self-texturing not working, hitting an assert.
This caused problems when turning off "slow effects", and who knows what
else.
Fixes #15208
2021-12-08 22:01:23 +01:00
Henrik Rydgård
05429fc34f
Vulkan: Correct the max level to generate mipmap calculation
2021-12-07 21:28:58 +01:00
Unknown W. Brackets
3180e6c043
softgpu: Correct alpha on add + invalid texfuncs.
2021-12-05 16:28:37 -08:00
Unknown W. Brackets
325a1f75aa
softgpu: Match texenv blend texfunc accurately.
2021-12-05 16:09:26 -08:00
Unknown W. Brackets
0b6e7c421f
softgpu: Make decal tex func more accurate.
...
Tested for all values of A * B + 0 * (255 - B), as well as A * 127 + B *
(255 - 127), and matches accurately. Spot checked other values, but not
exhaustively.
2021-12-05 13:34:19 -08:00
Unknown W. Brackets
154bb53744
softgpu: Correct accuracy on fast path modulate.
2021-12-05 13:10:18 -08:00
Unknown W. Brackets
73460f7461
softgpu: Correct accuracy of MODULATE texfunc.
...
This matches hardware tests for every value of A * B.
Interesting that it's a different formula than alpha blend.
2021-12-05 12:06:52 -08:00
Unknown W. Brackets
891fa8c613
softgpu: Template away uncommon mip usage.
...
Improves general case about 10%.
2021-12-04 15:45:06 -08:00
Unknown W. Brackets
48e9404419
softgpu: Remove useless switch by UV gen mode.
...
They're all handled earlier now, and the switch is on a value & 3, so the
default wasn't even possible.
2021-12-04 15:45:06 -08:00
Unknown W. Brackets
ff94974df9
softgpu: Avoid texlevel check when maxlevel is 0.
2021-12-04 15:45:06 -08:00
Unknown W. Brackets
823c4adb15
softgpu: Keep arguments in vectors for sampling.
2021-12-04 15:45:06 -08:00
Unknown W. Brackets
d7c25b3e7c
samplerjit: Refactor nearest using reg cache.
2021-12-04 13:04:53 -08:00
Unknown W. Brackets
4aa5bee14c
softjit: Make it an error to unlock a temp.
...
Also fix some register usage in logic ops.
2021-12-01 21:50:02 -08:00
Unknown W. Brackets
75a918f96f
softjit: Get rid of pointless AGE00 tests.
2021-12-01 21:44:10 -08:00
Unknown W. Brackets
f47fb7e14e
softjit: Normalize some stencil test patterns.
2021-12-01 21:43:52 -08:00
Unknown W. Brackets
ba69e39256
softjit: Avoid tests for greater than 0.
...
They take more instructions, and can be somewhat common.
2021-12-01 21:40:10 -08:00
Unknown W. Brackets
aec41b34d6
softjit: Reduce ditherMatrix to 8-bit.
...
Oops, not sure why I made it 16 bit.
2021-12-01 21:39:29 -08:00
Unknown W. Brackets
1c5615624a
softjit: Oops, correct allocation typo.
...
Decided to leave these for paired operations.
2021-12-01 21:37:55 -08:00
Unknown W. Brackets
bfe82e417d
softjit: Fix locked stencil reg.
2021-11-28 20:26:01 -08:00
Unknown W. Brackets
99c213f244
softjit: Centralize argument register allocation.
2021-11-28 15:53:24 -08:00
Unknown W. Brackets
7aea6d2ab0
softjit: Fix fog typo causing locking bug.
2021-11-28 12:26:23 -08:00