raven02
cd024e88e8
Add #extension GL_EXT_shader_framebuffer_fetch : require
2014-04-14 19:55:34 +08:00
Unknown W. Brackets
419e812c9a
Also color swap DXT textures.
...
Probably #5878 .
2014-04-14 01:27:47 -07:00
Unknown W. Brackets
943353faac
Use GL_BGRA for 32 bit textures on Windows.
...
25% improvement in Popolocrois, probably decent gains in other games using
32-bit textures often. FF2 for example doesn't.
2014-04-14 00:28:31 -07:00
Henrik Rydgård
a285d047ea
Merge pull request #5873 from unknownbrackets/texcache
...
Fix texture cache invalidation...
2014-04-14 09:16:30 +02:00
Unknown W. Brackets
9982d04f9d
Optimize the case of a direct byte copy.
...
Small improvement (like 3.5%) in God of War.
2014-04-13 21:31:30 -07:00
Unknown W. Brackets
f4458edc76
Avoid unbinding the current fbo on block transfer.
...
Improves God of War performance by 25% (at least in the demo.)
2014-04-13 21:11:17 -07:00
raven02
a29255b647
Fix wrong stretch in Wildarm XF (non-buffered mode)
2014-04-14 11:40:04 +08:00
Unknown W. Brackets
ca6e4635aa
Fix texture cache invalidation.
2014-04-13 16:25:09 -07:00
Unknown W. Brackets
dc0eea0522
Propagate texcache hash fails through cluts.
...
In games that use palette swapping (hi, FF2), if we detect a change in
a texture, another texture with the same address but new clut might not be
rehashed.
This just marks all other textures as dangerous when a hashfail occurs.
Fixes FF2 from recent optimizations. It's slower, but still much faster
than before.
2014-04-13 16:20:58 -07:00
Unknown W. Brackets
58038c05fc
Simplify gstate_c savestate code a bit.
...
So it's not as awkward to modify.
2014-04-13 15:16:51 -07:00
Unknown W. Brackets
6cfc61665d
Switch to a bitmask instead.
2014-04-13 14:45:55 -07:00
Unknown W. Brackets
4c1c694d4b
Use flags to avoid hashing textures when unchanged.
...
If only parameters change (like wrapping or clut, etc.) we don't need to
rehash the data - we know it hasn't changed.
Should reduce the distance between lazy texture hashing on and off.
2014-04-13 14:22:39 -07:00
Unknown W. Brackets
2f72da8087
Don't dirty the texture on texmapenable.
...
Tales of Phantasia X flips on and off texturing during battle transitions.
This causes tons of needless rehashes.
2014-04-13 13:19:35 -07:00
Unknown W. Brackets
b6dc7eba8b
Simplify texture status checks a bit.
2014-04-13 13:19:35 -07:00
Unknown W. Brackets
f2ff8544c7
Don't check diff in ExecuteOpInternal().
...
Since it's not called if !diff, there's no need. Small performance
improvement.
2014-04-13 10:25:14 -07:00
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