Unknown W. Brackets
18f2a45a6a
softgpu: Allow binning across prim calls.
2022-01-16 00:49:49 -08:00
Henrik Rydgård
9bef900cd7
Merge pull request #15311 from unknownbrackets/softgpu-state
...
Avoid gstate references in rasterizerization
2022-01-16 09:40:25 +01:00
Henrik Rydgård
2aa41b45b6
Merge pull request #15309 from unknownbrackets/debugger
...
Debugger: Avoid flushing meminfo on write lookup
2022-01-16 09:39:18 +01:00
Henrik Rydgård
86714d9f96
Merge pull request #15310 from unknownbrackets/softgpu-opt
...
softgpu: Tune queue push/pop to reduce overhead
2022-01-16 09:38:45 +01:00
Unknown W. Brackets
fc292b127b
softgpu: Correct dither matrix lookup.
...
Oops, need to wrap x/y, of course...
2022-01-15 23:51:21 -08:00
Unknown W. Brackets
6da7765309
softgpu: Correct logic op state update.
2022-01-15 22:31:28 -08:00
Unknown W. Brackets
b42ebe15d8
softgpu: Fix off-by-one size limit on bin queues.
2022-01-15 21:59:23 -08:00
Unknown W. Brackets
2539fb7c3c
softgpu: Tune queue push/pop to reduce overhead.
...
These aren't safetly atomic with concurrent pushers or poppers, but as
long as there's only one of each, they're still safe.
Shaves a decent % off Drain time for heavy scenes.
2022-01-15 20:18:49 -08:00
Unknown W. Brackets
0f2fc00f1b
Debugger: Avoid flushing meminfo on write lookup.
...
Small improvement on frequent block transfers, etc.
2022-01-15 19:43:16 -08:00
Unknown W. Brackets
6896a7a64e
softgpu: Use cached state for screen offset.
2022-01-15 18:20:25 -08:00
Unknown W. Brackets
edb79d968f
softgpu: Cache CLUT params in sampler state.
...
And now there's no more gstate for pixel drawing or sampling. Just a
little left in rasterization.
2022-01-15 18:09:09 -08:00
Unknown W. Brackets
c0e85e6170
softgpu: Move texenv color into sampler state.
2022-01-15 17:52:40 -08:00
Unknown W. Brackets
ad3635c82a
softgpu: Move tex size to cached state.
2022-01-15 17:22:43 -08:00
Unknown W. Brackets
02c5559393
softgpu: Remove z from DrawingCoords.
...
It's not really used much of anywhere, anyway.
2022-01-15 15:38:56 -08:00
Unknown W. Brackets
bf2e060735
softgpu: Move c++ tex func to sampler.
...
It's not used anywhere else now.
2022-01-15 15:28:07 -08:00
Unknown W. Brackets
a228b2ab6c
softgpu: Use cached sampler state outside jit.
2022-01-15 15:26:26 -08:00
Henrik Rydgård
aeb81c3cb2
Merge pull request #15307 from unknownbrackets/softgpu-state
...
softgpu: Remove accesses to gstate from DrawPixel
2022-01-15 23:55:25 +01:00
Unknown W. Brackets
a2abf9402b
softgpu: Cache line drawing state.
2022-01-15 13:17:40 -08:00
Unknown W. Brackets
58455c8cf1
softgpu: Use cached state for clear write mask.
2022-01-15 13:03:11 -08:00
Unknown W. Brackets
092b03bd67
softgpu: Move fixed blend factor to draw pix state.
...
This is the last of the gstate.
2022-01-15 13:03:11 -08:00
Unknown W. Brackets
f4f7ea2736
softgpu: Cache colortest params in draw pix state.
2022-01-15 13:03:11 -08:00
Unknown W. Brackets
aa9d751248
softgpu: Cache alpha/stencil test masks in state.
2022-01-15 13:03:11 -08:00
Unknown W. Brackets
acad2640dd
softgpu: Cache logicOp in draw pixel state.
2022-01-15 13:03:10 -08:00
Unknown W. Brackets
c0d548846f
softgpu: Use cached write mask in draw pixel.
2022-01-15 13:03:10 -08:00
Unknown W. Brackets
f1ce2e7715
softgpu: Cache minz/maxz in draw pixel state.
2022-01-15 13:03:10 -08:00
Unknown W. Brackets
0b3f096c01
softgpu: Cache strides in draw pixel state.
2022-01-15 13:03:10 -08:00
Unknown W. Brackets
e9f3720e20
softgpu: Cache fog color draw pixel state.
2022-01-15 13:03:10 -08:00
Henrik Rydgård
165e0a12a9
Merge pull request #15305 from unknownbrackets/softgpu-opt
...
softgpu: Avoid double calculating screenpos
2022-01-15 20:58:09 +01:00
Henrik Rydgård
a12a1962d1
Merge pull request #15303 from unknownbrackets/softgpu-verts
...
softgpu: Enqueue batches of prims when binning
2022-01-15 20:44:49 +01:00
Unknown W. Brackets
880826bab4
softgpu: Remove disable of cached pixel state.
...
That mode is slower now (with the other state changes), and we don't want
to read gstate anymore anyway.
2022-01-15 11:22:50 -08:00
Unknown W. Brackets
cf3384c993
softgpu: Avoid double calculating screenpos.
2022-01-15 11:22:36 -08:00
Unknown W. Brackets
3134bd1ff9
softgpu: Cleanup push/pop atomic handling.
...
Two concurrent push/pops would hazard, though we don't do that.
This improves perf a bit by avoiding an atomic read again.
2022-01-15 00:02:31 -08:00
Unknown W. Brackets
c86a0157d8
softgpu: Remove old task.
...
Oops.
2022-01-14 20:52:20 -08:00
Unknown W. Brackets
f091225572
softgpu: Stop storing model pos.
...
We don't even use this anywhere else. Also skip needless Lerp on clip.
2022-01-14 20:36:09 -08:00
Unknown W. Brackets
d6a8cb2a0e
softgpu: Stop storing normal/worldnormal/worldpos.
...
This is only needed for lighting, which is applied right away.
This improves perf just simply from less data being copied.
2022-01-14 20:32:18 -08:00
Unknown W. Brackets
5a35525fd4
softgpu: Enqueue batches of prims when binning.
...
This cuts some thread overhead.
2022-01-14 20:19:32 -08:00
Henrik Rydgård
bdc62be881
Merge pull request #15302 from unknownbrackets/softgpu-verts
...
Process verts within a draw call in binned threads within softgpu
2022-01-14 16:21:16 +01:00
Henrik Rydgård
12e4784e4f
Merge pull request #15301 from unknownbrackets/softgpu-opt
...
Move more state processing to per prim call
2022-01-14 08:59:11 +01:00
Unknown W. Brackets
46e3c71522
softgpu: Adjust binning thresholds.
...
This improves Persona 3 and LBP.
2022-01-13 23:14:45 -08:00
Henrik Rydgård
4c6eff3041
Merge pull request #15298 from unknownbrackets/softgpu-opt
...
Compute func IDs and get func pointers once per prim call
2022-01-14 08:07:20 +01:00
Unknown W. Brackets
dffc333120
softgpu: Avoid thread ordering hazard.
...
Must run the primitives in the right order. No shortcutting allowed.
2022-01-13 23:03:42 -08:00
Unknown W. Brackets
970e9c2f51
softgpu: Move threading into BinManager.
...
This threads much more effectively, across entire prim call.
2022-01-13 22:45:23 -08:00
Unknown W. Brackets
48ef4a18b1
softgpu: Handle scissor/range in BinManager.
2022-01-13 19:07:41 -08:00
Unknown W. Brackets
a0a9b1e89b
softgpu: Add class to manage and enqueue for bins.
...
For now, just forwarding.
2022-01-13 09:26:59 -08:00
Henrik Rydgård
8d45593d75
Merge pull request #15299 from ANR2ME/adhoc_gamemode
...
[AdhocGameMode] Fix Bomberman Panic Bomber multiplayer
2022-01-13 16:52:27 +01:00
ANR2ME
d5036ff2ae
Fix buffer overflow issue on GameMode.
2022-01-13 16:13:53 +07:00
ANR2ME
4b6431f7fe
GameMode Scheduler should only runs when there are active Master.
2022-01-13 15:35:16 +07:00
ANR2ME
2d5699d62b
Prevent creating another GameMode Master, since we don't support more than one Master data, and there is no ID related to Master.
2022-01-13 14:06:51 +07:00
ANR2ME
73dff0566e
Fix an issue where more than one GameMode Scheduler can be scheduled.
2022-01-13 14:02:33 +07:00
ANR2ME
4d0c7385ec
Fix an issue where sceNetAdhocGameModeCreateReplica blocked current thread for initial sync while Master data hasn't been created yet.
2022-01-13 13:03:58 +07:00