33625 Commits

Author SHA1 Message Date
Unknown W. Brackets
fca9b77bd2 Kernel: Allow allocating FPLs in volatile memory. 2022-09-20 08:32:01 -07:00
Henrik Rydgård
c1d1c85116 Minor code cleanups (hasBegun is now redundant, for example) 2022-09-20 17:05:53 +02:00
Henrik Rydgård
b190c33cc7 Rewrite some present logic for slightly more clarity. Fixes bad logic and a minor race condition. 2022-09-20 17:05:53 +02:00
Henrik Rydgård
c7322edf7b Various refactoring 2022-09-20 17:05:45 +02:00
Unknown W. Brackets
25c0a55ccf
Merge pull request #16058 from unknownbrackets/sysmem-volatile
Allow allocating against volatile memory
2022-09-20 07:27:03 -07:00
Unknown W. Brackets
6cfde01858
Merge pull request #16059 from hrydgard/unify-gpu-feature-flags
Unify many GPU feature flags
2022-09-20 07:05:02 -07:00
Henrik Rydgård
aa19712fc3 Unify depth texture and framebuffer fetch checks 2022-09-20 10:47:49 +02:00
Henrik Rydgård
09bcf3ec13 Unify range culling detection 2022-09-20 10:15:04 +02:00
Henrik Rydgård
1ae7c0132c Start unifying setting of the GPU feature flags, now that thin3d has feature detection. 2022-09-20 10:07:01 +02:00
Unknown W. Brackets
ef5eecce56 Kernel: Load volatile memblocks from save states.
Otherwise they'd reset to userMemory.
2022-09-20 00:37:21 -07:00
Unknown W. Brackets
8772c6e2f8 Kernel: Check sceKernelAllocPartitionMemory args.
This is the order you get error codes back in if there are multiple
errors.
2022-09-20 00:31:01 -07:00
Unknown W. Brackets
7580844ea5 Kernel: Fix save states for volatile memory alloc. 2022-09-20 00:07:38 -07:00
Unknown W. Brackets
640ff1cb22 Merge remote-tracking branch 'origin/pull/16052' into sysmem-volatile 2022-09-20 00:05:59 -07:00
Henrik Rydgård
913ba9de88
Merge pull request #16056 from unknownbrackets/debugger-clut
GE Debugger: Include rendered CLUTs in frame dumps
2022-09-19 21:47:30 +02:00
Unknown W. Brackets
fddcbfc5fa GE Debugger: Include rendered CLUTs in frame dumps.
Like with textures, this uses the VRAM address directly.
2022-09-19 12:01:34 -07:00
Henrik Rydgård
afb7b1500b
Merge pull request #16055 from hrydgard/render-manager-cleanup
Vulkan render manager cleanup
2022-09-19 19:47:16 +02:00
Henrik Rydgård
2160882e95 Address feedback 2022-09-19 19:27:50 +02:00
Henrik Rydgård
cfe4e3278d Vulkan: Remove the useThread bool entirely. 2022-09-19 18:17:26 +02:00
Henrik Rydgård
d0016add37 Start moving stuff out to VulkanFrameData.cpp 2022-09-19 18:14:41 +02:00
Henrik Rydgård
3e0b3ba1a8
Merge pull request #16054 from unknownbrackets/softgpu-flush
softgpu: Reduce some flushing / flushing cost
2022-09-19 17:56:44 +02:00
Henrik Rydgård
6712f6a4f9
Merge pull request #16053 from unknownbrackets/ge-debugger
GE Debugger: Save current clut in frame dumps
2022-09-19 17:53:01 +02:00
Unknown W. Brackets
e2929fb395 softgpu: Skip flushing on no change.
Minor tweak, we sometimes try to flush even without anything to flush, and
were previously rechecking a lot of things.
2022-09-19 08:38:11 -07:00
Unknown W. Brackets
259abf79dd softgpu: Skip more triangles with equal verts.
Even if X is not equal, if all Y are equal, we can still skip.
This seems to happen more often than I expected with far away objects.

Skipping here avoids filling up the queue.
2022-09-19 08:37:47 -07:00
Unknown W. Brackets
e727570fae Windows: Normalize paths for OpenDirectory().
This was making GE frame dumps not automatically browse when run from MSVC
debugging by default, because of the relative path.
2022-09-19 08:30:57 -07:00
Unknown W. Brackets
7b4cc3334b GE Debugger: Save current clut in frame dumps.
For example, #14465 shows a case where the frame relies on a previously
loaded CLUT.
2022-09-19 08:30:12 -07:00
Crow-bar
789983ebad HLE: sceKernelAllocPartitionMemory volatile memory support (partition 5) 2022-09-19 15:26:45 +03:00
Henrik Rydgård
4b165f9fc1
Merge pull request #16049 from unknownbrackets/depth-clamp
GPU: Clip depth properly when also clamping
2022-09-19 10:22:34 +02:00
Henrik Rydgård
1b207231de
Merge pull request #16051 from unknownbrackets/gamedata-minor
Gamedata: Cleanup install request args/validate
2022-09-19 09:43:52 +02:00
Henrik Rydgård
2b93fac3c3
Merge pull request #16047 from unknownbrackets/ge-debugger
GE Debugger: Allow search by state name
2022-09-19 09:42:26 +02:00
Unknown W. Brackets
f0afc97247 Gamedata: Cleanup install request args/validate. 2022-09-18 20:39:13 -07:00
Unknown W. Brackets
c397b0287a
Merge pull request #16050 from hrydgard/buffer-frames-fix
Fix the UI setting "Buffer graphics commands". Was off by 1.
2022-09-18 16:05:16 -07:00
Henrik Rydgård
9d4351b484 Fix the UI setting "Buffer graphics commands". Was off by 1. 2022-09-19 00:45:08 +02:00
Unknown W. Brackets
a2a7e8258b GPU: Clip depth properly when also clamping.
Helps situations like #11216, where only one side should be clamped.
Keeps depth clamp (i.e. #7932) working.  See #11399.
2022-09-18 13:18:02 -07:00
Unknown W. Brackets
c08c873462 GLES: Support more clip distances.
Will be used later, for now just the enable/disable logic.
2022-09-18 13:16:59 -07:00
Henrik Rydgård
a23fe93ad8
Merge pull request #16048 from unknownbrackets/softgpu-earlyz
softgpu: Correct line early z checks
2022-09-18 22:07:31 +02:00
Unknown W. Brackets
7d4aa3eb2d softgpu: Correct line early z checks.
Was looking at completely wrong pixels, hadn't removed subpixels yet.
2022-09-18 11:44:01 -07:00
Unknown W. Brackets
a0b44c52b8 GE Debugger: Allow search by state name.
Since adding breakpoint as the first column, the default search behavior
stopped working.  This restores it, searching for any matching column.
2022-09-18 10:49:32 -07:00
Unknown W. Brackets
5b5529b390 GE Debugger: Show time spent stepping. 2022-09-18 09:52:15 -07:00
Unknown W. Brackets
f2beafe769
Merge pull request #16046 from unknownbrackets/tests-update
headless: Add some new and passing tests
2022-09-18 09:00:40 -07:00
Unknown W. Brackets
ca248e1201 softgpu: Fix s8 primitives in throughmode.
Also always cull no-position verts, hardware too.  Matches tests.
2022-09-18 07:46:18 -07:00
Unknown W. Brackets
c65880fa90 headless: Add some new and passing tests. 2022-09-18 06:40:15 -07:00
Unknown W. Brackets
91d9c69d42
Merge pull request #16042 from unknownbrackets/softgpu-prim
softgpu: Refactor imm prim handling to support fog/color1
2022-09-18 06:39:26 -07:00
Unknown W. Brackets
9f84cde062 GPU: Fix crash on imm vert triangles.
Was crashing because the frag and vert shaders didn't match up.
2022-09-18 06:16:26 -07:00
Unknown W. Brackets
97002692c4 softgpu: Correct secondary color on imm verts.
Only with through set, and we have to ignore position.
2022-09-18 06:16:26 -07:00
Unknown W. Brackets
6877ff1af2 softgpu: Fix state/continuation for imm prims. 2022-09-18 06:16:26 -07:00
Unknown W. Brackets
596b07bd2e softgpu: Support fog and color1 on imm verts. 2022-09-18 06:16:26 -07:00
Unknown W. Brackets
35ba01e01f softgpu: Refactor imm draws to bypass vert read. 2022-09-18 06:16:25 -07:00
Unknown W. Brackets
799a9ae95b softgpu: Simplify vertex reading. 2022-09-18 06:16:25 -07:00
Unknown W. Brackets
de080e2594 softgpu: Simplify vertex range culling.
The previous logic was harder to understand and easier to get wrong.
Just drop them when clipping the primitive.
2022-09-18 06:16:25 -07:00
Unknown W. Brackets
028a341cc8 softgpu: Explicitly flush on sync and output.
We could in theory skip flush on FinishDeferred, and allow some CPU/GPU
overlap.  If we did, we'd still want to flush at these times.
2022-09-18 06:16:25 -07:00