2402 Commits

Author SHA1 Message Date
Unknown W. Brackets
e780a645cb Use the FLAG_EXECUTEONCHANGE flag.
Improves fps by 1-3% in some games, seems to be a win after all.
2014-04-13 10:23:21 -07:00
Unknown W. Brackets
22a80fb7be softgpu: Avoid multithreading thin polygons.
Small performance improvement (5-6% in some areas.)
2014-04-13 09:01:14 -07:00
Unknown W. Brackets
0d59fc0d2e Oops, forgot to reset the frame when unchanged.
Fixes #5861.
2014-04-13 08:15:48 -07:00
Henrik Rydgård
9bcb2f3a0e Merge pull request #5859 from raven02/patch-1
Implement in-shader ABSDIFF blending mode
2014-04-13 10:18:59 +02:00
Henrik Rydgård
cb3db6ada4 Merge pull request #5854 from unknownbrackets/fbo-sizing
Try to improve FBO sizing
2014-04-13 10:16:23 +02:00
raven02
a9d7be1eab Should be id0 2014-04-13 16:13:59 +08:00
raven02
f1254c79ed Turn off regular alpha blending 2014-04-13 16:03:50 +08:00
raven02
e358a6dcbe Handle ABSDIFF blending mode using GL_EXT_shader_framebuffer_fetch 2014-04-13 16:01:55 +08:00
Unknown W. Brackets
f462721394 Rather than only enlarging, watch for persistence.
If the game keeps using something at a new size, we know it's time to make
some adjustments.
2014-04-12 23:12:35 -07:00
raven02
568b14f890 Regress fix https://github.com/hrydgard/ppsspp/issues/5769 2014-04-13 13:58:34 +08:00
Unknown W. Brackets
1a53be45cc When uploading video pixels, detect w/h by size.
Sometimes the framebuffer size is incorrect, but kinda works... but this
is a problem for the video.  Using the size gets us better.

In Wild Arms XF, the framebuffer is 512x512, but that's not right.  It's
clear it should be 480x272.
2014-04-12 22:02:47 -07:00
Unknown W. Brackets
1f76adb7a3 If a larger framebuffer is needed, upgrade it once.
This should prevent issues where it gets larger and smaller like in the
past.
2014-04-12 20:46:38 -07:00
sum2012
fa1b65fd59 Avoid unknown get pointer in Rasterizer.cpp
Find in #5350 in softgpu
2014-04-13 06:45:46 +08:00
Henrik Rydgård
d67f91d899 Merge pull request #5841 from unknownbrackets/ge-signals
Improve sync and pause GE signal handling
2014-04-12 23:40:27 +02:00
Unknown W. Brackets
e93407f33e Oops, downgrade from ERROR to DEBUG, and -report. 2014-04-12 00:04:02 -07:00
Unknown W. Brackets
26933384a7 Don't mark a list complete too early.
This would matter probably mostly if we implemented CONTINUE properly.
2014-04-11 23:50:20 -07:00
Unknown W. Brackets
4561440df7 Handle GE pause signals per tests.
They really should pause, but we were resetting them incorrectly.
And most importantly, sceGeContinue() inside the signal handler absolutely
must work.  Games use this a lot.
2014-04-11 23:50:20 -07:00
Henrik Rydgård
05b23c7bd9 Merge pull request #5802 from raven02/patch-1
Texture lod bias should be signed
2014-04-11 20:58:55 +02:00
raven02
a6523dd507 Texture lod bias should be signed 2014-04-12 02:33:52 +08:00
Unknown W. Brackets
702294fe60 Don't trigger pause GE signals either, comments.
This better explains what each signal does.
2014-04-10 00:23:36 -07:00
Unknown W. Brackets
9c75c1e6fd Avoid triggering SYNC ge signals.
Fixes #5806, bcause it avoids rescheduling at the signal, which it should
not do.  Possibly this is incorrect for all GE signals, but we don't need
to trigger any behavior on a sync anyway.
2014-04-08 22:20:33 -07:00
Unknown W. Brackets
8a440f93b1 Super stupid typo. 2014-04-05 14:08:44 -07:00
Unknown W. Brackets
d91ad87daa Small perf improvements in DecodeVertsStep(). 2014-04-05 12:32:10 -07:00
Unknown W. Brackets
82df1b1fa8 Simplify UpdatePC() a bit more. 2014-04-05 12:04:10 -07:00
Unknown W. Brackets
cbb6c01d4c Avoid some debug stats when disabled.
This function can get called a lot sometimes, and an if helps on ARM a
little.
2014-04-05 01:41:54 -07:00
Unknown W. Brackets
bb2fb12edd Inline SetupVertexDecoder() in SubmitPrim().
Everything SubmitPrim() calls is expensive...
2014-04-05 01:25:04 -07:00
Unknown W. Brackets
f05f8c7b12 Fix alpha channel in 565 morph on x86.
Shuffling is annoying, just do it on the other side.  Fixes #5784.
2014-04-02 10:10:42 -07:00
Henrik Rydgård
89cf9230a1 Indentation fix 2014-04-02 10:28:03 +02:00
Henrik Rydgard
d83a5da6bd Fix glTextureStorage2D issue by scaling w/h. Fixes #5625 2014-04-02 00:15:41 +02:00
Unknown W. Brackets
7c70d8b04e Oops, remove some duplicate code.
Moved this to the inlined SetRenderFrameBuffer().
2014-04-01 02:09:21 -07:00
Unknown W. Brackets
e7639f666c Ensure stuff run on every prim are inlined.
These both get a ton of calls and show up on profiles.
2014-03-30 00:42:26 -07:00
Unknown W. Brackets
466a5418d2 Cut time in EstimatePerVertexCost().
From profling, this cuts 4% time while lighting is enabled, and 14% while
disabled (on ARM.)  But maybe should just inline this...
2014-03-30 00:42:26 -07:00
Unknown W. Brackets
7cde2311e0 Include sceKernelThread.h in less headers. 2014-03-29 17:02:41 -07:00
Unknown W. Brackets
a4327702f1 Reduce some includes under GPU/. 2014-03-29 16:51:38 -07:00
Henrik Rydgård
4c437218e4 Merge pull request #5766 from unknownbrackets/gpu-minor
Update some flags in GLES_GPU
2014-03-29 17:25:19 -04:00
Unknown W. Brackets
27550a2336 Update some flags in GLES_GPU.
It's useful to know if we need to have a correct PC value or downcount.
2014-03-29 14:10:35 -07:00
Unknown W. Brackets
0950e7b86d Optimize ComputeVertexShaderID() a bit.
This is only like 1%.  Along the way found and fixed an overlap of bits.
2014-03-29 10:35:09 -07:00
Unknown W. Brackets
1209bc7ba4 Optimize ComputeFragmentShaderID() a bit.
I've seen it decently high on some profiles (1-2%).  This cuts it down by
12.5% when used in a tight loop.  The temporary was 8%, the ifs were the
other 4.5%.
2014-03-29 10:21:04 -07:00
Unknown W. Brackets
2b7d2fdc4b Optimize > and != 0 alpha tests.
There's no need to do rounding in this case.  These are very common.

Also, if the test was !=, convert it to >, which may work better on
PowerVR.
2014-03-29 10:16:06 -07:00
Henrik Rydgard
f99925261d Merge branch 'raven02-patch-42'
Conflicts:
	GPU/GLES/FragmentShaderGenerator.cpp
2014-03-29 17:26:33 +01:00
raven02
664efe6812 Return false when alpha blending disabled 2014-03-29 22:04:59 +08:00
raven02
2944856c42 FS : Add missing gstate.isTextureMapEnabled() 2014-03-29 21:03:28 +08:00
Henrik Rydgard
37e9fc59b3 2x alpha: Safer change than the last attempt. Still fixes P2. I think this can be simplified, anyway. 2014-03-29 12:10:44 +01:00
Henrik Rydgard
27767fa85c Revert "Rethink 2x src alpha->color doubling. Fixes #3379."
This reverts commit 47efded29fbde6e5cee23ad413b1da6e7566a7c0.
2014-03-29 12:01:47 +01:00
Henrik Rydgard
47efded29f Rethink 2x src alpha->color doubling. Fixes #3379. 2014-03-29 11:40:17 +01:00
Henrik Rydgard
94c1e56d9b Merge branch 'gpu-minor' of github.com:unknownbrackets/ppsspp into unknownbrackets-gpu-minor
Conflicts:
	GPU/GLES/VertexDecoder.cpp
2014-03-29 10:15:57 +01:00
Henrik Rydgard
74f593362b Non-jit vertex decoder, morph: Clamp colors to 0-255. 2014-03-29 10:07:51 +01:00
Unknown W. Brackets
4b1737b0cd vertexjit: Oops, don't use NEON when not supported. 2014-03-29 02:05:10 -07:00
Unknown W. Brackets
18f6407705 Clamp morph colors in non-vertexjit.
Not sure if any platforms use this...
2014-03-29 01:53:28 -07:00
Unknown W. Brackets
3adab534c7 vertexjit: Fix dumb mistakes in NEON color morphs. 2014-03-29 01:00:02 -07:00