Commit graph

26 commits

Author SHA1 Message Date
Unknown W. Brackets
6896a7a64e softgpu: Use cached state for screen offset. 2022-01-15 18:20:25 -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
Unknown W. Brackets
a2abf9402b softgpu: Cache line drawing state. 2022-01-15 13:17:40 -08:00
Unknown W. Brackets
48ef4a18b1 softgpu: Handle scissor/range in BinManager. 2022-01-13 19:07:41 -08:00
Unknown W. Brackets
6839aac109 Debugger: Cache list PC for softgpu tagging.
Still slow, but improved.
2022-01-12 21:23:49 -08:00
Unknown W. Brackets
d962fb35d3 softgpu: Centralize more prim drawing state. 2022-01-12 21:23:49 -08:00
Unknown W. Brackets
75ff3e44e6 softgpu: Move texture addresses to prim state. 2022-01-11 00:00:03 -08:00
Unknown W. Brackets
d5c5e9478e softgpu: Prepare more state per prim call. 2022-01-10 22:12:35 -08:00
Unknown W. Brackets
d7a82ab7b8 softgpu: Compute func IDs once per batch of verts.
This saves a decent chunk of time, especially when many verts are being
drawn.
2022-01-10 22:12:35 -08:00
Unknown W. Brackets
496545e55c softgpu: Add code for tracking GPU writes.
Unfortunately, it has a pretty noticeable speed impact, even at the basic
"assume everything's written" level.  Compiled off by default, but at
least it's there.

Doesn't account for tests (i.e. alpha test skipping write) so still not
perfectly accurate.
2022-01-02 08:28:30 -08:00
Unknown W. Brackets
823c4adb15 softgpu: Keep arguments in vectors for sampling. 2021-12-04 15:45:06 -08:00
Unknown W. Brackets
09dc38080a softgpu: Move draw pixel code to separate file.
This separates things better anyway.  No major perf impact.
2021-11-21 08:23:32 -08:00
Unknown W. Brackets
f7a31c992d softgpu: Use pixel func ID to draw pixels.
This just reduces reliance on gstate directly, and should help keep things
consistent.
2021-11-20 15:27:04 -08:00
Henrik Rydgård
970adfbcc9 Isolate most of the softgpu specialization code to RasterizerRectangle.
See comments.
2019-10-28 09:33:30 +01:00
Henrik Rydgård
290e9971a7 More specialization work. 2019-10-27 20:54:36 +01:00
Henrik Rydgård
c7f6724f7e Detect sprite drawing (1:1 texture mapping), run a simpler function without the triangle state tracking.
This will allow further simplification and specialization.
2019-10-27 20:54:36 +01:00
Unknown W. Brackets
ed34cf06b8 SoftGPU: Add a clear mode fast path.
This skips a lot of extra work for clears, which are pretty common.
2017-11-11 21:04:32 -08:00
Unknown W. Brackets
eaf3288304 Add debug interface for non-L0 texture preview. 2014-06-15 09:30:37 -07:00
Henrik Rydgård
68b08ffb9f SoftGPU: Quick and dirty lines and points implementation
No line/point texturing support yet.
2013-12-09 12:43:49 +01:00
Unknown W. Brackets
b9811c7c97 Use the slow way to get the softgpu texture.
So that it actually shows what the softgpu is using.
2013-10-07 01:26:48 -07:00
Unknown W. Brackets
5c2d418d95 Read softgpu stencil using existing funcs.
Slower but at least it's the same.
2013-10-07 01:02:58 -07:00
Tony Wasserka
b22a82d350 softgpu: Optimization, part 2. 2013-08-16 23:49:11 +02:00
Tony Wasserka
f270d3bd98 softgpu: Simplify Rasterizer::DrawTriangle by passing individual vertices instead of a vertex array. 2013-08-16 23:49:03 +02:00
Tony Wasserka
7899a9b9c9 softgpu: Texture coordinate support and something like ARGB4444 texture support. 2013-08-16 23:48:55 +02:00
Tony Wasserka
142f2a3688 softgpu: Move triangle rasterization code to a new file. 2013-08-16 23:48:54 +02:00