Commit Graph
47140 Commits
Author SHA1 Message Date
Unknown W. Brackets a4558a5736 samplerjit: Take texptr/bufw as arrays.
Prep for moving mip map sampling into linear.
2021-12-28 12:04:16 -08:00
Unknown W. Brackets 4864850b3b samplerjit: Handle mipmap width/height in S/T calc. 2021-12-28 11:29:29 -08:00
Unknown W. Brackets a84accf713 samplerjit: Move S/T calculation into jit.
Gives a pretty decent 5-10% improvement in many places.
2021-12-28 09:58:23 -08:00
Unknown W. Brackets 476dfdf731 samplerjit: Add more bits for S/T, skip multiply.
For now, we're not using those other bits yet.
2021-12-27 18:24:37 -08:00
Unknown W. Brackets 9cc0883d53 softgpu: Correct non-SSE T clamp. 2021-12-27 15:31:37 -08:00
Henrik Rydgård 1f5680e614 Merge pull request #15253 from unknownbrackets/samplerjit-vec
Vectorize texture sampling a bit, make filtering more accurate
2021-12-27 21:00:51 +01:00
Unknown W. Brackets 39d5b1c221 softgpu: Reduce mipmap fraction to 4 bits.
For CONST (and SLOPE with flat w), this produces accurate values.
SLOPE is still wrong in its handling of w, and AUTO seems to calculate
using a different and less accurate ramp.  But they both produce values
with 16 steps, in any case.
2021-12-27 11:37:33 -08:00
Unknown W. Brackets d6b6ef4cb1 softgpu: Correct nearest filtering too.
Turns out to have the same behavior as linear, when it comes to the
subpixel offset.
2021-12-27 11:37:33 -08:00
Unknown W. Brackets 1dfaea9062 softgpu: Remove no longer possible report.
Also, it's known how this behaves, now.
2021-12-27 11:37:33 -08:00
Unknown W. Brackets 75f105f84b softgpu: Make linear filtering more accurate.
This matches tests for various u/v offsets and x/y subpixel offsets.
Mipmaps are probably still wrong.
2021-12-27 11:37:32 -08:00
Unknown W. Brackets 3cd19b02ac samplerjit: Handle unswizzled offsets too. 2021-12-27 11:37:32 -08:00
Unknown W. Brackets 820361f34b samplerjit: Calculate texel byte offset as vector. 2021-12-27 11:37:32 -08:00
Unknown W. Brackets 4d6a2f3919 samplerjit: Blend linear using integers. 2021-12-27 11:37:32 -08:00
Unknown W. Brackets 6f4e735757 samplerjit: Accumulate results in an XMM. 2021-12-27 11:37:32 -08:00
Unknown W. Brackets b00a66e34c samplerjit: Pass u/v coords as vector. 2021-12-27 11:37:32 -08:00
Henrik Rydgård cc767622d0 Merge pull request #15247 from unknownbrackets/debugger-hash
Debugger: Don't try to hash invalid RAM
2021-12-21 08:29:37 +01:00
Unknown W. Brackets 9017f91253 Debugger: Don't try to hash invalid RAM. 2021-12-20 16:17:18 -08:00
Unknown W. Brackets 31d7d1e55a Merge pull request #15244 from hrydgard/vulkan-profiler-toggle
Make the Vulkan GPU log profiler a runtime developer setting
2021-12-19 15:32:20 -08:00
Henrik Rydgård 74f76e5ef1 Missing stdarg.h include 2021-12-20 00:11:51 +01:00
Unknown W. Brackets fadf01dc7b Vulkan: Update profiler formatting for this. 2021-12-19 14:56:50 -08:00
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 2c38a14ad6 Merge pull request #15243 from unknownbrackets/icache-hash
jit: Use a hash for invalidate/clear all
2021-12-19 20:59:56 +01:00
Unknown W. Brackets 00f9707399 jit: Use a hash for invalidate/clear all.
This should make sceKernelICacheClearAll() more useful.
2021-12-19 10:40:33 -08:00
Unknown W. Brackets 3a61119e77 Merge pull request #15242 from hrydgard/unknownbrackets-vk-profiler
Vulkan: Disable profiler by default again
2021-12-19 10:15:35 -08:00
Unknown W. Brackets 148ca08047 Vulkan: Disable profiler by default again. 2021-12-19 09:12:58 -08:00
Henrik Rydgård a9dcf482c6 Improve the check for "slow" GPUs (with regards to tex scaling). See #15238 2021-12-18 21:51:33 +01:00
Henrik Rydgård 1e9e3376be Merge pull request #15238 from hrydgard/hardware-texscale-limits
Vulkan: Be more restrictive about hardware texture upscaling on "slow" GPUs
2021-12-18 16:47:43 +01:00
Henrik Rydgård 2851065889 Merge pull request #15237 from unknownbrackets/path-case
Path: Check for PSP case insensitively
2021-12-17 09:35:19 +01:00
Unknown W. Brackets 3e73ce87ee Path: Check for PSP case insensitively.
This allows a game to look up ms0:/psp/ eve with the PSP special case path
handling.
2021-12-16 15:06:15 -08: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
Henrik Rydgård d294b6a1ca Merge pull request #15235 from hrydgard/unknownbrackets-cull-remove
GPU: Remove explicit rect/line depth cull
2021-12-14 08:57:23 +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 9755781704 Oops, accidentally enabled the logging GPU profiler by default. 2021-12-13 09:01:13 +01:00
Henrik Rydgård cd8493f470 Merge pull request #15230 from hrydgard/4xbrz-opt
Vulkan: 4xBRZ texture upscaling shader optimizations
2021-12-12 23:49:41 +01:00
Henrik Rydgård c1a41bef72 Merge pull request #15231 from unknownbrackets/debugger-debounce
Debounce debugger window updates
2021-12-12 23:26:39 +01:00
Henrik Rydgård 0e65b86e0a Address feedback (preserve alpha-ignoring equality checks) 2021-12-12 23:21:28 +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 fb3b7f8e23 Optimize the xBRZ texture scaling shaders by 30% on Adreno, less on Mali 2021-12-12 23:21:26 +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 628363e303 fmt 2021-12-12 23:20:56 +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 7e097084a6 Make a copy of tex_4xbrz 2021-12-12 23:07:11 +01:00
Unknown W. Brackets 7fe9c4e519 Debugger: Debounce updates to disasm text.
This is a bit slow, so deferring it improves update speed.
2021-12-12 11:57:24 -08:00
Unknown W. Brackets 045fc0f2b4 Debugger: Never wait inactive on window update.
This blocks the UI, and we always get a message when stepping is actually
active anyway.  More importantly, we PostMessage() debugger state, so we
might've already resumed.
2021-12-12 11:36:06 -08:00
Unknown W. Brackets db2eddcf27 Debugger: Remove double debug window updates.
Core_EnableStepping() is already marking the debug windows for update,
there's no need to call SetDebugMode() again.
2021-12-12 11:24:03 -08:00
Unknown W. Brackets c57e5b081d Debugger: Debounce list control updates. 2021-12-12 11:03:19 -08:00