Commit Graph

13661 Commits

Author SHA1 Message Date
Unknown W. Brackets
030b562eb9 Support render-to-offset within a framebuffer.
Fixes #6324.
2014-06-14 17:08:41 -07:00
Unknown W. Brackets
063e8508df Support drag-and-drop of savestate files.
Most likely you want to load the state, not see an error message.
2014-06-14 16:13:35 -07:00
Henrik Rydgard
ab61255018 Allow only a small number of "InvalidateAll" operations per frame on the texture cache.
Reduces stutter in FF:Type0 tutorial end scene a bit more.
2014-06-15 00:40:08 +02:00
Henrik Rydgard
4e6baaf360 wasPaused int->bool 2014-06-15 00:03:55 +02:00
Henrik Rydgard
3b2fed472e Correct timing on resume, avoids small speed burst when resuming gameplay from pause 2014-06-14 23:56:16 +02:00
Henrik Rydgård
34dcc23e69 Merge pull request #6322 from unknownbrackets/gpu-blocktransfer
Support inter-buffer memcpy, mark vfb dirty when blitting to it, etc.
2014-06-14 22:43:08 +02:00
Unknown W. Brackets
651d8a4a7d Support inter-buffer memcpy transfer.
Seeing some games using it like 3rd Birthday uses block transfers, to copy
a frame to the other buffer.
2014-06-14 13:22:00 -07:00
Unknown W. Brackets
d06a0520ae Consistently mark vfb dirty after drawing to it. 2014-06-14 13:19:27 -07:00
Henrik Rydgård
59bef47035 Merge pull request #6321 from unknownbrackets/texscaling
Reduce some texture scaling limits to rely on texels instead
2014-06-14 20:08:39 +02:00
Henrik Rydgård
c5d15d9755 Merge pull request #6320 from unknownbrackets/texcache
Validate render to texture better, report more, and support vram mirrors
2014-06-14 20:07:42 +02:00
Unknown W. Brackets
6ebdf2be29 Skip memcpy fb download when already downloaded.
Fixes Final Fantasy Tactics lag, discussion in #6308.
2014-06-14 11:04:17 -07:00
Unknown W. Brackets
b1396d51b2 Log more info about skipped subarea renders. 2014-06-14 11:04:17 -07:00
Unknown W. Brackets
ec7942fc8a Report decoding a texture from a VRAM mirror.
Might mainly be depth textures?
2014-06-14 11:04:16 -07:00
Unknown W. Brackets
0b9db176e9 Centralize render-to-tex logic, support mirrors.
Now everything is decided in AttachFramebuffer().
2014-06-14 11:04:16 -07:00
Unknown W. Brackets
822f936b05 Validate stride when using clut, more reporting. 2014-06-14 11:04:15 -07:00
Unknown W. Brackets
d8eaeab663 Reduce change frequency limit for texscaling.
Since we have the texels limit now, this should allow more textures to be
scaled safely.  Also, it may detect alpha optimizations in more textures,
since we currently skip them for frequently changed textures.
2014-06-14 10:49:13 -07:00
Sacha
f11e2aaf69 Qt: Split GPU from Core to fix Debugger conflict. 2014-06-15 03:43:52 +10:00
Unknown W. Brackets
0620c6edc7 Forgive freq. changed tex if they mend their ways. 2014-06-14 10:43:22 -07:00
Unknown W. Brackets
99c8319f15 Don't count unscaled frequently changing texels.
May cause more things to be scaled per frame (especially if first textures
on a frame are frequently changing.)
2014-06-14 10:40:23 -07:00
Henrik Rydgård
434af26af7 Merge pull request #6319 from unknownbrackets/debugger
Skip stepping time in debug stats
2014-06-14 18:36:03 +02:00
Unknown W. Brackets
098e763b82 Enable block transfers in headless for testing.
This allows us to do memory (not just screenshot) tests with GLES, yay.
2014-06-14 08:44:14 -07:00
Unknown W. Brackets
03f86f364f Skip debug stepping time in list/func time.
Just makes the debug stats actually useful while stepping.  A bit of
overengineering, but it makes it easy to go frame-by-frame looking for
perf issues.
2014-06-14 08:42:18 -07:00
Henrik Rydgard
b39bf4a88a Merge branch 'hardfp' of github.com:xsacha/ppsspp into xsacha-hardfp 2014-06-14 12:07:55 +02:00
Henrik Rydgård
5f6c083a3e Merge pull request #6315 from unknownbrackets/framebuf-estimate
Avoid shrinking buffer w/h in throughmode
2014-06-14 11:06:37 +02:00
Unknown W. Brackets
119edd34e6 Avoid shrinking buffer w/h in throughmode.
Since they could overdraw and we already scissor.
2014-06-14 01:56:34 -07:00
Henrik Rydgård
036cde7768 Merge pull request #6313 from unknownbrackets/gpu-minor
Implement in-shader blending on gles2 / gl2
2014-06-14 09:21:30 +02:00
Henrik Rydgård
5fa331bb56 Merge pull request #6310 from hrydgard/deferred-scaling
Limit the amount of texture scaling done per frame to reduce stutters
2014-06-14 08:59:40 +02:00
Henrik Rydgård
18cccc3b67 Merge pull request #6314 from unknownbrackets/gpu-alphatest
Support NEVER alpha/color tests
2014-06-14 08:56:13 +02:00
Unknown W. Brackets
444128dcdd Support NEVER alpha/color tests. 2014-06-13 23:44:40 -07:00
Unknown W. Brackets
1d9f7b04fc Implement in-shader blending on gles2 / gl2.
I'm sure it'll be slow, though...
2014-06-13 23:42:59 -07:00
Unknown W. Brackets
9e97206c5f Actually buildfix Linux / Android x86. 2014-06-13 23:42:28 -07:00
Unknown W. Brackets
673e92927a Avoid an infinite loop on small heights. 2014-06-13 23:37:08 -07:00
Unknown W. Brackets
b3541084c1 Buildfix for Linux/Android x86. 2014-06-13 23:10:02 -07:00
Henrik Rydgard
af9bfaed9c Attempt fix for cpuid on x86
Sign extension would be bad.

(couldn't test it right now, adb driver issues :/)
2014-06-14 00:55:02 +02:00
Henrik Rydgard
aa31b9ace9 The "fallback" title is already set, don't need to set it again 2014-06-14 00:19:09 +02:00
Henrik Rydgard
4e81eadc88 Minor cleanup in texcache 2014-06-14 00:18:37 +02:00
Henrik Rydgård
6a8965898f Update native 2014-06-13 23:35:51 +02:00
Henrik Rydgård
2f86e3e021 Clear STATUS_TO_SCALE at a better place 2014-06-13 23:01:40 +02:00
Henrik Rydgård
ea9f8d8bf3 Comment out the deferred scaling logs. 2014-06-13 22:11:25 +02:00
Henrik Rydgård
c0c058937f Limit the amount of texture scaling done per frame, to reduce stutters
Scaling causes really bad stutters in some games on some hardware.

This should also reduce the impact of pathological cases like the first
boss of FF Type-0 to be more bearable.
2014-06-13 22:07:26 +02:00
Henrik Rydgård
547f2a1075 Merge pull request #6308 from unknownbrackets/gpu-minor
Support gpu memcpy/memset line-by line
2014-06-13 20:49:03 +02:00
Henrik Rydgård
cb6aa5a708 Merge pull request #6305 from unknownbrackets/resched
Reschedule after many cases of eating cycles
2014-06-13 20:46:51 +02:00
Unknown W. Brackets
f84650b6be Report possible textures at subareas > 32.
For the ones outside the hack 0x04110000 range.
2014-06-13 09:19:51 -07:00
Unknown W. Brackets
005e3c0920 Oops, fix Qt missing debugger stuff. 2014-06-13 09:15:04 -07:00
Unknown W. Brackets
ac6cbf3524 Take the nearest fbo for a y-offset memcpy(). 2014-06-13 08:45:26 -07:00
Unknown W. Brackets
392897d447 Allow oversized gpu memcpys.
Seems to happen in Mana Khemia, where it uses h=384, but it looks
legitimate.
2014-06-13 08:42:58 -07:00
Unknown W. Brackets
00651ceea1 Support gpu memcpy/memset line-by-line.
Fixes some glitches in Final Fantasy Tactics, which uses memset line by
line (at width, not stride.)

Should still be relatively safe, unless a buffer is detected as too tall.
The memcpy() will still happen anyway.
2014-06-13 08:36:02 -07:00
Unknown W. Brackets
dad1bf41f7 Avoid making FBO copies in the debugger.
When it binds the texture preview.  Not needed.
2014-06-13 08:35:12 -07:00
Unknown W. Brackets
aa6355a9e5 Reschedule after many cases of eating cycles.
All of these eat enough cycles they could cause issues in a loop, and I'm
pretty sure they would reschedule.
2014-06-13 00:30:21 -07:00
Henrik Rydgård
3da962f585 Merge pull request #6300 from unknownbrackets/gpu-blocktransfer
Try to handle more block transfer / tex render cases
2014-06-12 20:34:26 +02:00