Commit Graph
9567 Commits
Author SHA1 Message Date
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
Sacha 4ed944a576 Remove redundant armv7 defines. 2014-06-11 15:15:39 +10: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
Sacha c745072b55 Update Symbian to GCC 4.8.3 2014-06-11 03:10:50 +10: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
Henrik Rydgård 28da52472a Merge pull request #6269 from xsacha/master
Travis: Update to GCC 4.7.3 for Symbian.
2014-06-09 12:52:35 +02:00
Sacha fd70cfa149 Travis: Update to GCC 4.7.3 for Symbian. 2014-06-09 20:28:26 +10: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
Henrik Rydgard 9c799b773d Don't use glTexStorage2D, see issue #6075
Probably didn't help much anyway.
2014-06-08 18:36:18 +02:00
Henrik Rydgård fe58f8daa9 Merge pull request #6254 from unknownbrackets/framebuf-clamp
Correct framebuf clamping, tex projection from framebuf
2014-06-08 11:22:38 +02:00
Henrik Rydgård be02ea7769 Merge pull request #6255 from unknownbrackets/gpu-blocktransfer
Enable "simulate block transfer" by default
2014-06-08 11:15:22 +02:00
Henrik Rydgard 4b9823c0ea Let's see if there are any remaining fog INF/NAN issues out there 2014-06-08 11:06:34 +02:00
Unknown W. Brackets 4effd15fcb Support Grand Knight History's line-by-line xfer.
This is a bit hacky, but what it's doing at least makes sense enough to
heuristically detect.  Still trying to avoid misdetecting God of War.
2014-06-07 23:59:34 -07:00
Unknown W. Brackets 3f8ef6dacd Ensure stride in bytes matches FBO up/download.
Even if we should do the copy, we'll currntly use the wrong x/y/w/h.
This fixes incorrect uploads in God of War, which hurt performance a lot.

Unfortunately, in this game there's zero information to tell us the right
size of some small temp framebuffers it uses, so we overestimate their
sizes and the block transfer appears to fall into range.
2014-06-07 22:40:41 -07:00
Unknown W. Brackets ed39bb7a9c When projecting textures, flip V in frag shader.
Slower, but this way we actually project correctly.
2014-06-07 19:32:19 -07:00
Unknown W. Brackets da438b7c68 Fix clamping to the correct texel.
This fixes things when edges bleed in from a larger framebuffer.  We need
to clamp to the internal texels of the range.
2014-06-07 19:30:46 -07:00
Unknown W. Brackets 7226aad903 Don't allow the buf name cache to get too full. 2014-06-07 16:28:24 -07:00
Unknown W. Brackets 5f521bcfb0 Reuse buffer objects when possible.
glBufferData() recreates anyway.
2014-06-07 16:20:12 -07:00
Unknown W. Brackets 4971206e92 Allocate vertexcache buffer names in chunks.
Partially implements #6045.
2014-06-07 16:15:37 -07:00
Unknown W. Brackets 0896c3412d Allocate textures names in blocks.
May improve performance slightly when loading or recycling textures.
Probably uploading the texture is bigger anyway.
2014-06-07 16:13:53 -07:00