Commit Graph
3990 Commits
Author SHA1 Message Date
Unknown W. Brackets 4a8d52ab1a Add a config option for the slow framebuf effects.
Like cluts, blitting, etc.  At higher render resolutions these are
expensive, and on some mobile devices they may be too much.

Of course, they're only used when needed so this is a speedhack.
2014-07-08 23:57:27 -07:00
Unknown W. Brackets 81e6f93be4 Check for access to offset framebuffers better.
Even if the height of the framebuffer doesn't exactly match the offset.
Fixes #2759 again.
2014-07-06 11:52:00 -07:00
Unknown W. Brackets be76846679 When applying the Danganronpa hack, force 5551.
This prevents dithering from happening during the blit, and since
dithering is off during drawing, allows the colors to be correct on some
devices which always dither during blits.
2014-07-05 00:49:30 -07:00
Unknown W. Brackets 8ab33795b3 Delete temporary/blitting FBOs on device lost.
Fixes issues when the device goes to sleep with Danganronpa, block
transfers, etc.
2014-07-04 23:27:12 -07:00
Unknown W. Brackets 4cb8c414b0 Use the CPU for download on non-NVIDIA cards.
Fixes #6494.
2014-07-04 18:04:32 -07:00
Unknown W. Brackets 3a2d1ac28e Correct async packing alignment.
Only matters if a framebuffer width is not a multiple of 4, which might
not happen anyway.
2014-07-04 14:10:56 -07:00
Unknown W. Brackets 6a4269b1d0 Disable dithering (which affects pixel download.)
Fixes #6494.
2014-07-04 14:10:20 -07:00
Unknown W. Brackets be0340bb34 Fix crash when FBO_ARB is not available.
Experienced this on a Mac / SDL with a Radeon X1600.
2014-07-04 01:54:03 -07:00
Unknown W. Brackets edd760fe39 Oops, forgot a cast. 2014-07-03 01:30:08 -07:00
Henrik Rydgård ed9866b212 Merge pull request #6490 from unknownbrackets/framebuffer-clut
Fix depal shaders on GLES3 devices
2014-07-03 09:53:53 +02:00
Henrik Rydgård 4972f63dfa Merge pull request #6491 from unknownbrackets/gpu-minor
Try to fix color test masking on GLES3 devices
2014-07-03 09:52:45 +02:00
Unknown W. Brackets 739c215d35 Stop reporting memcpy fbo upload/download. 2014-07-03 00:48:46 -07:00
Unknown W. Brackets 61ea20875c Fix shader blending on ARM GLES3 devices.
We currently ban them from GLES3, and this was interacting with that
incorrectly.  Should we still ban them, though?
2014-07-03 00:15:15 -07:00
Unknown W. Brackets e364de42cb Ensure #extension is before non-# tokens.
As required by Tegra devices from reporting.
2014-07-02 23:21:52 -07:00
Unknown W. Brackets c379169efc Try to fix colormasking on GLES3 devices.
Not tested, though, since I don't have one... from reporting.
2014-07-02 23:15:02 -07:00
Unknown W. Brackets 5ddb848d09 Fix depal shaders on GLES3 devices.
This path should have only > GL 3.3 or GLES3 so texture() is okay.
2014-07-02 22:35:47 -07:00
Unknown W. Brackets 602daf5f8a Add some missing algorithm includes. 2014-07-01 00:26:22 -07:00
Unknown W. Brackets 5db79dcf11 Fix some missing semicolons on log statements. 2014-06-29 19:09:37 -07:00
Unknown W. Brackets 32a11dc28d Minor optimization for prescale/not, fix switch. 2014-06-29 15:47:00 -07:00
Unknown W. Brackets 596abeca06 Use the same vertex decoders for splines.
Had the vert type bits at the top.
2014-06-29 15:46:59 -07:00
Unknown W. Brackets 95f4341838 Allow changing prescale uv at runtime. 2014-06-28 21:51:25 -07:00
Unknown W. Brackets 1c3b60a8ee Allow changing software skinning at runtime. 2014-06-28 21:46:43 -07:00
Unknown W. Brackets d2d7d6e34b Destroy all FBOs/textures upon sceKernelLoadExec().
It can confuse our heuristics about size, attachment, memcpy, etc.
2014-06-28 12:29:09 -07:00
Unknown W. Brackets 63bcb65d96 Height can be equal, just not greater.
Oops.
2014-06-28 03:41:44 -07:00
Unknown W. Brackets 7d0aeb067a Make sure the conv buffer matches the used height.
May matter if bufferHeight > height.
2014-06-28 02:40:40 -07:00
Unknown W. Brackets 217d8d24ea Validate height better when downloading fbs. 2014-06-28 02:33:28 -07:00
Henrik Rydgård 9351fe44ea Merge pull request #6444 from unknownbrackets/jit-minor
Use more correct rounding in armjit, update x86jit and minor
2014-06-28 11:20:11 +02:00
Unknown W. Brackets e57ed7d2f4 Small optimizations to stencil scanning. 2014-06-28 02:00:14 -07:00
Unknown W. Brackets a33589b3e9 Optimize away bits in the stencil upload.
Should be faster than sending to the GPU this way, if we can help it.
Should improve delays on FBO creation at high render resolutions.
2014-06-28 01:39:18 -07:00
Unknown W. Brackets 464b453748 Use a temp FBO at 1x to upload stencil.
This improves performance at > 1x resolutions.
2014-06-28 01:19:07 -07:00
Unknown W. Brackets 89ffbd027e vertexjit: Specify round to zero in ARM rounding.
Only affects color morphs.  NEON always rounds to zero so let's be
consistent.
2014-06-28 00:38:57 -07:00
Unknown W. Brackets b829be1bfe Require 25% of texture to overlap framebuffer.
Because it's probably wrong if only a small amount overlaps.
2014-06-26 00:48:48 -07:00
Henrik Rydgard d040b980dd Experiment: Disable clear optimization on PVR (see #6290) 2014-06-24 23:32:40 +02:00
Unknown W. Brackets ca2d9286e0 Notify the texcache when fb format changes.
Fixes #2094 again.
2014-06-24 00:14:56 -07:00
Henrik Rydgard cc269488b2 Protect against bad spline patch data better.
Also fix a struct name collision.
2014-06-24 01:14:32 +02:00
Henrik Rydgård e27e285624 Merge pull request #6396 from hrydgard/ridge-racer-hack
Ridge Racer hack: Flush after every prim if fb addr == tex addr.
2014-06-23 17:52:25 +02:00
Henrik Rydgård 14c0c019db Merge pull request #6407 from unknownbrackets/replace-funcs
Fix function replacement hooks on arm
2014-06-23 17:50:32 +02:00
Unknown W. Brackets 8a7b440933 Don't need this flag, it read from memory. 2014-06-23 08:21:20 -07:00
Unknown W. Brackets ad060b992d Clear buffers right after creating them.
Seems like some drivers have trouble otherwise.
2014-06-23 00:17:35 -07:00
Unknown W. Brackets 6d104edb5d Make sure not to leak any enabled vertex arrays.
When returning to EmuScreen, we need to reset any enabled vertex arrays or
we could crash in EmuScreen.  Also, when starting a frame / dirting the
shader, make sure also to toggle the vertex arrays.
2014-06-22 21:42:29 -07:00
Unknown W. Brackets b8ad665b53 Clear vertex attrib arrays before output to screen.
Doesn't seem to help the mis-enabled arrays, though.
2014-06-22 21:03:33 -07:00
Unknown W. Brackets 4c62a17f72 Allow exact render-to-tex format mismatches more.
If the right format was used recently, it's still okay.  Also check the
x/y offset to try to find the best match.
2014-06-22 21:02:43 -07:00
Henrik Rydgard 8b60fe0239 Ridge Racer hack: Flush after every prim if fb addr == tex addr.
Fixes the bloom errors. @unknownbrackets discovered this method.

Not sure if I want to merge this.. It does add yet another check
to a critical path.
2014-06-22 20:37:50 +02:00
Unknown W. Brackets 73d77d3e8a Warning fix. 2014-06-21 18:04:00 -07:00
Unknown W. Brackets e0b4aa68d0 Typos. 2014-06-21 12:04:27 -07:00
Henrik Rydgård 5f57e7ebaf Merge pull request #6383 from unknownbrackets/gpu-minor
Check for closest render-to-tex, ignore high bits of fb addr
2014-06-21 21:03:17 +02:00
Unknown W. Brackets 0418c8071a Support more shift/masks in fb cluts on GLES2. 2014-06-21 11:10:57 -07:00
Unknown W. Brackets e9224e9eaa Actually set the offset framebuffer.
Oops.
2014-06-21 09:04:39 -07:00
Unknown W. Brackets 1cea361c65 Remove now-unnecessary MaskedEqual() compares.
Clearer this way I think.
2014-06-21 08:30:45 -07:00
Unknown W. Brackets 4319d5eb28 Take the closest offset framebuffer.
There could be multiple, or even an exact match too.  Make sure to take
the closest one.
2014-06-21 08:23:10 -07:00