Unknown W. Brackets
30394df775
softgpu: Make texture lookups do less math.
2013-12-08 22:37:45 -08:00
Henrik Rydgard
bd1d4e2d92
As if softgpu wasn't slow enough already, implement bilinear filtering.
2013-12-09 01:44:23 +01:00
Unknown W. Brackets
637a9de75d
Optimize out some clear mode checks.
...
Since it's really common and the rasterizer is slow for large draws.
2013-12-08 14:24:17 -08:00
Unknown W. Brackets
598d509fb9
Use multiple threads if available for softgpu.
...
VIVA OVERHEAD. But it's actually generally faster this way, even with
only 2 cores running (but not a huge improvement then.)
On an i7, this improves things ~2.5x with 8 cores.
2013-12-08 13:41:20 -08:00
Henrik Rydgard
e2080f6c65
Revert "STENCIL_VALUE_UNKNOWN for DECR/INCR/INVERT"
...
This reverts commit 59d3b92e71
.
Revert "zero alpha if stencil op consistently says to zero for format 5551 as well"
This reverts commit ed07a7f411
.
2013-12-08 17:48:22 +01:00
raven02
59d3b92e71
STENCIL_VALUE_UNKNOWN for DECR/INCR/INVERT
2013-12-08 22:19:13 +08:00
raven02
ed07a7f411
zero alpha if stencil op consistently says to zero for format 5551 as well
2013-12-08 22:05:31 +08:00
Henrik Rydgard
7b4759384f
Only zero alpha if stencil op consistently says to zero.
...
Otherwise we may be better off keeping the alpha.
2013-12-08 13:04:54 +01:00
Henrik Rydgard
628bf497dd
Hopefully fix UV scaling properly this time.
...
Check the faces in Hexyz Force please.
2013-12-08 11:52:20 +01:00
Henrik Rydgård
08a0709091
Merge pull request #4751 from unknownbrackets/reporting
...
Cut down on reporting of FBO misuse
2013-12-08 01:18:39 -08:00
Unknown W. Brackets
0e4ca7f9a8
Stop reporting logic ops.
...
We support them on desktop and they're not really often used.
2013-12-08 00:48:23 -08:00
Unknown W. Brackets
9de7b34d1c
Cut down on reporting of FBO misuse.
...
These cases are likely to be okay.
2013-12-08 00:38:10 -08:00
Unknown W. Brackets
2df1db4c7e
Avoid optimizing out both constant colors.
2013-12-07 23:24:25 -08:00
Unknown W. Brackets
a4780f5199
Don't forget the alpha in non-fixed blending.
2013-12-07 23:21:45 -08:00
Unknown W. Brackets
808eeb3a25
Attempt to pick a better blend for stencil replace.
2013-12-07 10:02:46 -08:00
raven02
60def7baf9
Set src/dst alpha to non GL_ZERO in case STENCIL_VALUE_UNIFORM
2013-12-07 21:11:47 +08:00
Unknown W. Brackets
054501c100
Replace alpha when blend mode allows it.
...
Some games are using fixed/fixed blending modes which work in our favor.
2013-12-07 02:54:33 -08:00
Unknown W. Brackets
113f9795f3
Try to more correctly handle stencil when blending.
...
Although, not accurate, this will attempt to KEEP and etc.
2013-12-07 01:58:33 -08:00
Henrik Rydgard
c738364f67
Make sure to disable scissor when doing the initial clear of a new FBO.
...
Minor cleanups.
2013-12-06 23:08:37 +01:00
Henrik Rydgård
3fb973af90
GL_NV_draw_texture requires more testing, turn off temporarily.
...
Fix the V coordinates sent in while at it.
2013-12-06 13:01:34 +01:00
Henrik Rydgård
13cdbd5284
Mask away alpha when the stencil operation is KEEP
2013-12-06 11:15:13 +01:00
Henrik Rydgard
41209eb936
Stencil-to-alpha fragment tweak: Set alpha to 0 if we can't deduce the stencil value.
...
This fixes the weird glowing shadows in Wipeout.
2013-12-04 19:55:09 +01:00
Henrik Rydgard
1a3e7a17fb
Workaround for spline UV scale problem with texcoord speedhack
2013-12-04 14:33:45 +01:00
Henrik Rydgard
95d5c28720
Fix bug where we scaled UV coordinates twice when a tex matrix was used.
2013-12-04 14:20:42 +01:00
Henrik Rydgard
3983144c42
Make sure that blending is disabled when doing DrawPixels.
...
Add a comment about a potential texture scaling problem with splines.
2013-12-04 14:02:40 +01:00
Henrik Rydgard
d1f054e033
Wait, we're not in clear mode there so no need to check.
2013-12-04 13:17:41 +01:00
Henrik Rydgard
10b9e83353
Dest alpha mask: Try some rules that seem to make sense from what we know now.
2013-12-04 13:16:22 +01:00
Henrik Rydgard
127864b679
Prevent post shaders from getting applied twice in some circumstances when playing video.
2013-12-04 11:46:42 +01:00
Henrik Rydgard
ca1d4172ca
Tiny optimization in block copies
2013-12-04 11:34:54 +01:00
Henrik Rydgard
e1657fec96
Get rid of WipeFramebufferAlpha ini-only option.
2013-12-04 09:41:25 +01:00
Henrik Rydgard
33efffe759
When blending (and we thus can't use stencil-to-alpha in frag shader), always write zero to alpha.
...
It seems the PSP doesn't blend in the alpha channel.
Reduces glow problems in Gods Eater Burst and Wipeout - although Wipeout loses some glow
that should be there.
2013-12-03 11:27:31 +01:00
Henrik Rydgard
a6150db8d5
Disable frag shader stenciltoalpha in clearmode.
2013-12-03 11:10:27 +01:00
Unknown W. Brackets
4418aacbaf
When writing stencil to alpha, consider fb format.
2013-12-03 00:15:08 -08:00
Unknown W. Brackets
034de0e992
Do not wrap stencil values on INCR/DECR.
2013-12-03 00:02:07 -08:00
Henrik Rydgard
30028439b6
Must set the EXECUTEONCHANGE since we dirty.
2013-12-03 00:55:09 +01:00
Henrik Rydgard
44beebf6b0
Realized it's ok to combine the stencil-to-alpha with alpha testing as it's done within the shader, before we replace alpha.
2013-12-03 00:51:25 +01:00
Henrik Rydgard
39b632b279
Copy the stencil value in REPLACE mode to fragment alpha (but only when it's safe)
...
This is cheap but incomplete.
To do it more "right", we need multipass when blending or alpha test is enabled, ugh. That's for later.
Anyway, this improves the glow situation in Wipeout somewhat. Still lots of stuff that glows that shouldn't, but a little less overwhelmingly bright.
2013-12-03 00:13:21 +01:00
Henrik Rydgard
198e230cdc
Re-add uniform location checks even though they aren't needed
...
Spec says that setting uniform -1 does nothing.
2013-12-02 23:35:49 +01:00
Henrik Rydgård
7c7c4aaadc
Add "u_time" uniform to postprocessing shaders.
2013-12-02 17:24:55 +01:00
Unknown W. Brackets
5f2d5d9c55
Fix an uninitialized value warning.
2013-12-01 11:21:17 -08:00
Unknown W. Brackets
eb3011fd18
Don't even define the sse tex hash on non-sse.
...
Avoids unused func warnings.
2013-12-01 11:21:16 -08:00
Henrik Rydgård
c1b43e1b2d
Merge pull request #4692 from unknownbrackets/verysleepy
...
Add support for profiling jit via VerySleepy
2013-12-01 02:44:20 -08:00
raven02
b00495f1e5
Not using factor in texture coords mapping mode
2013-12-01 16:04:29 +08:00
Unknown W. Brackets
d35717f5a8
Also report the vertex decoder jit to verysleepy.
...
Can use the same methods to support other platforms.
2013-11-30 19:20:22 -08:00
Henrik Rydgard
c42ee6d12e
oops
2013-11-30 19:09:27 +01:00
Henrik Rydgard
9c6e7e2958
Fix bug in vtxdec jit when hardware skinning
2013-11-30 16:26:50 +01:00
Henrik Rydgard
e3e9408b87
Resurrect the vtx decoder jit option for debugging
2013-11-30 16:11:54 +01:00
Henrik Rydgard
eea8413a82
Make the texcoord speedhack a bit less aggressive at eliminating uvscaleoffset uniform updates.
...
Should fix #4688 and the new problem in #2919 while keeping Frontier Gate Boost working.
2013-11-30 15:54:20 +01:00
Henrik Rydgård
562582320a
In LINEARFMV mode, let the presence of a video override the alpha and color test checks.
2013-11-29 18:08:29 +01:00
Unknown W. Brackets
435115441d
Reinitialize the GE on sceKernelLoadExec().
...
Mostly, reset the lists and draw completion, etc.
May be required for Capcom Classic Collection Reloaded to work.
2013-11-28 15:35:12 -08:00