Commit Graph
3990 Commits
Author SHA1 Message Date
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
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 673e92927a Avoid an infinite loop on small heights. 2014-06-13 23:37:08 -07:00
Henrik Rydgard 4e81eadc88 Minor cleanup in texcache 2014-06-14 00:18:37 +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
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 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
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
Unknown W. Brackets 025b92593a Just don't use render-to-text format mismatches.
This already excludes CLUTs.
2014-06-12 07:46:56 -07:00
Unknown W. Brackets 1a25456e52 Detach a format mismatch that's not rendering.
Assume we'd be better off reading ram.
2014-06-12 00:48:21 -07:00
Unknown W. Brackets 89206a8a09 Allow render-to-tex with > 16 y offset.
Trying to keep it cautious in case our sizes are wrong.
2014-06-12 00:41:42 -07:00
Henrik Rydgård 89bbc90678 Merge pull request #6299 from unknownbrackets/gpu-blocktransfer
Track framebuffer memory dirty more carefully
2014-06-12 09:01:38 +02:00
Henrik Rydgård 65153b55fa Never detach shaders as some drivers may have broken semantics. May help #6294
(you're supposed to be able to detach them after link)
2014-06-12 08:58:14 +02:00
Unknown W. Brackets 9b12a4893d Track framebuffer memory dirty more carefully.
Fixes #6296, Grand Knights History slowdown during battle transition.  May
also more correctly identify block transfer downloads.
2014-06-11 22:21:08 -07:00
Unknown W. Brackets b9f805c71f Fix graphical artifact in Jeanne d'Arc world map.
We need to use the last set render framebuffer, not the current one at
copy to output.
2014-06-11 00:54:54 -07:00
Unknown W. Brackets efc2de41ae Ignore depth buffers with stride = 0.
They're clearly not being used.
2014-06-11 00:40:47 -07:00
Unknown W. Brackets c49ba888b5 Flush draws before doing any block transfers.
Otherwise, we might flush on top, or we might download the wrong thing.
2014-06-11 00:28:28 -07:00
Unknown W. Brackets dd4b191003 Correct Gods Eater Burst tex download size.
Probably takes care of #6289, although it doesn't crash for me.
2014-06-10 22:59:08 -07:00
Henrik Rydgard 3e97713d16 Revert "Remove option" (disable alpha test)
Fixes issue #6286.

This reverts commit d2ce635bbf.
2014-06-10 23:13:42 +02:00
Henrik Rydgard 34b5a1c2f3 Disable precision qualifiers on desktop GL 2014-06-10 22:44:53 +02:00
Unknown W. Brackets adee76cd62 Add a matching PerformMemoryUpload().
Just so we have both Download and Upload to use later.
2014-06-10 00:45:03 -07:00
Unknown W. Brackets 5bd1d9d009 Avoid corrupting mem if our framebuf size is wrong.
Let the size specify the framebuffer height, which we are most likely to
have gotten wrong.
2014-06-10 00:15:05 -07:00
Unknown W. Brackets d5aae5a705 Match block transfer address even when uncached.
Rhythm8 for example uses an uncached address for the dest framebuffer.
2014-06-09 23:28:54 -07:00
Unknown W. Brackets ef12694c4b Don't update render tex x/y offset unless matched.
Sometimes we have false matches, they should be skipped.  Fixes some bloom
that is off in some games.
2014-06-09 22:45:14 -07:00
Sacha 9d9d135176 Symbian buildfix, x11 linker order 2014-06-10 15:33:30 +10:00
Sacha 87c7b31e77 Qt: Mac arch detection workaround on Qt4. Fix a conflict. 2014-06-10 15:11:25 +10:00
Henrik Rydgard e01f8232bd Try the quickfix proposed for 6272 at 1080p, works nicely.
Might want to do something more ambitions, too, allowing minor crops
on more resolutions...
2014-06-09 21:22:12 +02:00
Henrik Rydgard 339c4d7dc3 Fix a bunch of typos breaking various utility shaders on GLES
Fixes white shadows in FF-Type 0 on Tegra, as mentioned in #6268
2014-06-09 19:15:45 +02:00
Sacha e57ae29e4a Symbian: Switch to GCC 4.7.3. Blackberry: Switch to GCC 4.8.2 2014-06-09 23:49:30 +10:00
Henrik Rydgård 8bef7c64b1 Merge pull request #6262 from unknownbrackets/framebuf-estimate
Assume 512 tall framebuffers are wrong too
2014-06-09 13:02:57 +02:00
Unknown W. Brackets f801123849 Correct some depal format reporting. 2014-06-08 23:28:55 -07:00
Unknown W. Brackets 1bd44fd4e2 Typo. 2014-06-08 23:21:16 -07:00
Unknown W. Brackets 63e0d47de6 Report unsupported RGB and a/stencil masks. 2014-06-08 22:45:59 -07:00
Unknown W. Brackets 3884550c7b Remove a few TODOs that aren't relevant anymore. 2014-06-08 22:35:48 -07:00
Unknown W. Brackets 375bc34c4b Skip direct blocktransfer draw in buffered.
It isn't needed anymore, and causes glitches in Tales of Phantasia X.
2014-06-08 17:30:51 -07:00
Unknown W. Brackets 125a440e71 Try scissor/region height if viewport is == 512.
Fixes Tales of Phantasia X menu in towns, where it uses a 480 tall
framebuffer but specifies a 512 tall viewport.
2014-06-08 17:30:51 -07:00
Unknown W. Brackets 5fd0adcb6a Fix framebuf blit on resize. 2014-06-08 17:30:50 -07:00
Unknown W. Brackets fdf15cf05f Fix intra-buffer blit at non-1x resolutions.
Oops.
2014-06-08 16:26:47 -07:00
Henrik Rydgård 019757a2b8 Merge pull request #6260 from unknownbrackets/gpu-blocktransfer
Fix block transfer download with bpp mismatch
2014-06-09 00:15:25 +02:00
Unknown W. Brackets 3a0cce575c Fix block transfer download with bpp mismatch.
Pretty sure this will take care of #6258.
2014-06-08 15:05:10 -07:00
Henrik Rydgård 89667a870b Merge pull request #6259 from unknownbrackets/fbtex-offset
Apply byte offset when using rendered textures
2014-06-08 23:34:22 +02:00
Unknown W. Brackets b163ab9203 Use an extra shader id bit to skip offsetting.
Since the vast majority of the time it will be 0.
2014-06-08 14:28:18 -07:00
Unknown W. Brackets 865941a66d Ignore needShaderTexClamp when not texmapping. 2014-06-08 14:27:57 -07:00
Unknown W. Brackets acab898be0 Keep track of x/y offset for render-to-tex.
Fixes intro in Valkyrie Profile now that we're wrapping correctly.
2014-06-08 14:27:05 -07:00