Commit Graph
9567 Commits
Author SHA1 Message Date
Unknown W. Brackets 3e24786eab Disable the scissor test around blits.
Because it applies.
2014-05-27 02:00:28 -07:00
Unknown W. Brackets fce7d8c697 Ignore the funcs for min/max/absdiff.
Seems from reports that they are indeed ignored, just wanted to verify.
2014-05-27 01:45:21 -07:00
Unknown W. Brackets 8f9a2b9882 Unbind the fbo texture when it's not used.
Just in case there are problems with decimating it or etc.
2014-05-27 01:45:20 -07:00
Unknown W. Brackets 0eae30dddb Set a bit to account for fixa/fixb/etc. logic. 2014-05-27 01:45:20 -07:00
Unknown W. Brackets b8a2410934 Oops, typo. 2014-05-27 01:45:19 -07:00
Unknown W. Brackets f80dee4164 Remove outdated comment.
Was all lies.
2014-05-27 01:45:19 -07:00
Unknown W. Brackets b02fe1db3d Log when blitting a ton per frame, it can get slow. 2014-05-27 01:45:18 -07:00
Unknown W. Brackets 41ca303bee Skip a few more fixa/fixb combos. 2014-05-27 01:45:18 -07:00
Unknown W. Brackets a67327759f Double using multiply not add, should be fine. 2014-05-27 01:45:17 -07:00
Unknown W. Brackets 4b978ed6f9 Apply unsupported blending modes in the shader.
This handles unsupported fixed color combinations, alpha doubling, etc.
Where possible, tries to avoid it - it means using a blit (without the
framebuffer fetch extension), which can slow things down a lot with tons
of drawcalls.
2014-05-27 01:45:17 -07:00
Unknown W. Brackets 64f6012dba Support memsets of framebuffers as uploads.
Technically should clear stencil too... maybe it'd be better to handle
separately.
2014-05-27 01:17:09 -07:00
Unknown W. Brackets 95003cb77d Oops, reversed the check. 2014-05-27 00:57:40 -07:00
Unknown W. Brackets 2dbf680278 Play it a bit safer on rendering mode changes.
This way funny things should be less likely.
2014-05-26 23:28:54 -07:00
Unknown W. Brackets 4095831772 Allow changing "read framebuffers" at runtime.
Fixes #6149.
2014-05-26 23:26:29 -07:00
sum2012 03f9c3fe27 Add a missing Dangan Ronpa 1 hack
Dangan-Ronpa 1 PSP The Best Ver
2014-05-27 06:38:56 +08:00
Unknown W. Brackets 1a8369e51c Apply a very specific hack for Danganronpa.
This should allow playing at non-1x resolutions, and without slowing down
the entire game just for one small framebuffer.

Generally, hacks are a bad thing.  But even with memcpy and block transfer
stuff, we'll never be able to solve this game without some sort of hack.
Detecting memory reads will complicate cross-platform compat or slow
things down.
2014-05-26 11:40:46 -07:00
Henrik Rydgård 4873c5c44a Merge pull request #6143 from unknownbrackets/gpu-minor
Don't block duplicate enqueues when intr pending
2014-05-26 10:56:59 +02:00
Unknown W. Brackets ee8a180c41 Set the viewport on upload so 2x, etc. work. 2014-05-26 01:21:30 -07:00
Unknown W. Brackets 6243d0e8de Account for bpp mismatch in xfer upload. 2014-05-26 00:52:06 -07:00
Unknown W. Brackets a29d2e418e When multiple framebuffers match, use nearest. 2014-05-25 22:57:07 -07:00
Unknown W. Brackets 4f03f693b6 Mark texture as needing reset after upload. 2014-05-25 22:35:14 -07:00
Unknown W. Brackets e4dc702d68 Schedule the FBO blit during multithreading.
This was it's properly ordered with draws, and it runs on the right GL
context.
2014-05-25 22:08:15 -07:00
Unknown W. Brackets 9894b38a1d Support memcpy uploads to fbos.
Makes Vempire look right (has never worked before in any rendering mode.)
2014-05-25 22:01:08 -07:00
Unknown W. Brackets 9195019872 Allow memcpy gpu downloads.
Fixes FF4 battle transition effect, Trails in the Sky menu, etc.
2014-05-25 21:49:16 -07:00
Unknown W. Brackets 365012ec58 Fix block transfer upload.
Wasn't working properly, rendered to the wrong target.

No longer need the UpdateFromMemory() thing, now.
2014-05-25 21:48:44 -07:00
Unknown W. Brackets 8275f613ce UpdateMemory() now returns whether to skip the cpy.
This way it can do it itself as necessary in the right order.
2014-05-25 21:48:41 -07:00
Unknown W. Brackets 8228bee6bf Download only the necessary subareas.
Performance improvement in Tactics Ogre.
2014-05-25 19:50:40 -07:00
Unknown W. Brackets 230c7fb8a8 Don't block duplicate enqueues when intr pending.
Fixes #6138.
2014-05-25 18:52:31 -07:00
Unknown W. Brackets c42d04829f Detect if the game uses block transfer slivers.
In that case, it's better to read it once, than multiple times.
Improves performance and graphics in Grand Knights History.
2014-05-25 18:18:26 -07:00
Unknown W. Brackets c3efa05c9e Correct end framebuf range check. 2014-05-25 17:51:12 -07:00
Unknown W. Brackets 24ebc0d987 Flip framebuffer y correctly.
And here I just corrected another commit doing this wrong a few weeks ago.
Shame.
2014-05-25 17:46:42 -07:00
Unknown W. Brackets 89b3ead30d If multiple framebuffers match, offset correctly. 2014-05-25 17:45:45 -07:00
Unknown W. Brackets 2e1afcf08d When there are multiple copies, don't redownload.
This should improve performance when there are lots of little transfers.
2014-05-25 17:24:09 -07:00
Unknown W. Brackets cbb3fe0086 Refactor framebuffer size calculation. 2014-05-25 17:12:58 -07:00
Unknown W. Brackets cec8195e97 Cleanup reporting of block/memcpy transfers. 2014-05-25 17:10:06 -07:00
Unknown W. Brackets 976968c707 Track more kinds of memcpy operations on fbos. 2014-05-25 17:08:55 -07:00
Unknown W. Brackets fd4ba0093c Skip some code if things are outside framebuffers.
Small optimization.
2014-05-25 17:08:55 -07:00
Unknown W. Brackets 4dbb4328ae Download before, upload after. Fix save pictures.
Otherwise, it only works if it does it every frame, and then it's a frame
behind.  Also fixes Tales of Phantasia X's fades and etc.
2014-05-25 17:08:55 -07:00
Unknown W. Brackets 0e620b2fe9 Fix buffer overflow in MakePixelTexture(). 2014-05-25 16:28:28 -07:00
Unknown W. Brackets 30222f987d Flip framebuffers when downloading their pixels.
It seems like this is where it was being done...
2014-05-25 16:28:28 -07:00
Unknown W. Brackets d26addc7b4 Match the #ifdef for glBlitFramebufferNV.
It's defined in gl_state with these requirements.
2014-05-25 15:15:21 -07:00
Unknown W. Brackets 62cd61611e Support block transfers offset into a framebuffer. 2014-05-25 15:13:19 -07:00
Unknown W. Brackets cacbfab4b5 Allow glBlitFramebuffer on desktop, avoid NV.
Only use NV if !GLES3.  There's no reason otherwise.
2014-05-25 15:11:24 -07:00
Henrik Rydgard 8543de91d7 Don't skip the copy if block transfer is turned off 2014-05-25 10:50:28 +02:00
Henrik Rydgard 90f2d06697 Add setting to enable/disable GPU block transfer 2014-05-25 10:18:14 +02:00
Henrik Rydgard 33d15a6972 Try to implement block transfer upload to fbo. Doesn't seem to work right though... 2014-05-25 10:02:51 +02:00
Henrik Rydgard eaba341db0 Split DrawPixels up, preparing to make it more flexible 2014-05-25 10:02:50 +02:00
Henrik Rydgard c21fdef02d Typo fix 2014-05-25 10:02:49 +02:00
Henrik Rydgard 0208ca8e90 Add some reporting for framebuffer sceDmacMemcpys. 2014-05-25 10:02:49 +02:00
Henrik Rydgard 6c2ab3215f Try to fix R/B color swap problem 2014-05-25 10:01:40 +02:00