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