Commit Graph
3315 Commits
Author SHA1 Message Date
Henrik Rydgård ce9e864e4b Remove some unnecessary framebuffer binding 2017-05-30 09:36:17 +02:00
Henrik Rydgård 35aefe4a2a BindBackBufferAsRenderTarget is now replaced with BindFramebufferAsRT(nullptr) 2017-05-30 09:36:17 +02:00
Henrik Rydgård 3b6fa9be87 Start work on separating frame from backbuffer renderpass 2017-05-30 09:36:17 +02:00
Unknown W. Brackets 34fe95192f GPU: Cleanup some gstate accesses. 2017-05-26 19:03:04 -07:00
Unknown W. BracketsandGitHub ba483853c5 Merge pull request #9725 from hrydgard/remove-mipmap-setting
Remove the Mipmap setting. One step forward for #8171
2017-05-26 11:16:37 -04:00
Henrik Rydgård 0ec1e5e3b2 Don't erase and rewrite the dispatcher when the cache is cleared. Fixes #9708 2017-05-26 15:48:03 +02:00
Henrik Rydgård 1b05a54800 Remove the Mipmap setting. One step forward for #8171 2017-05-26 10:21:20 +02:00
Henrik RydgårdandGitHub 8cff9f8bc9 Merge pull request #9678 from unknownbrackets/mipmaps
Make const mipmaps more consistent
2017-05-13 16:58:55 +02:00
LunaMoo 5637ae1190 Fix typo in VertexDecoder 2017-05-13 16:27:26 +02:00
Unknown W. Brackets c4d1863ded GPU: Consistently bias const mip levels.
Since SLOPE is just a more complicated CONST, we can treat them the same.
2017-05-12 20:30:47 -07:00
Unknown W. Brackets dacb776300 x86: Minor optimization for s16 through positions.
This takes it from 150% to 390% non-jit for pos only verts.
2017-05-07 12:20:56 -07:00
Unknown W. Brackets 0fe927aaa7 x86: Minor memory copy perf improvement.
This was actually 270% -> 340% non-jit for pos-only verts.
2017-05-07 12:18:47 -07:00
Unknown W. Brackets b06e271ef3 x86: More optimal 4444 in vertexjit.
This was commented out, but works fine and goes from 320% -> 450% the speed
of non-jit for simple pos/col verts.
2017-05-07 12:14:06 -07:00
Unknown W. Brackets 7699fa55de arm: Jit throughmode 16-bit texcoords.
It's popular, and this makes decoding such verts much faster.
2017-05-06 22:52:58 -07:00
Unknown W. Brackets 257f8dbbc6 GPU: Remove now-unused vertex decoder funcs.
We always convert to float now, so these functions are no longer used.
2017-05-06 18:55:16 -07:00
Unknown W. Brackets d7ca05b6b5 GPU: Fix black screen on buffered render enable.
We were never clearing the skip flag.  Has been a bug since before v1.0.
2017-04-24 12:10:08 -07:00
Unknown W. Brackets fd4399e108 GPU: Centralize fb resize, move to begin of frame.
It makes more sense here, because otherwise when you change it from the UI
settings, it takes a frame to "kick in".
2017-04-24 12:02:52 -07:00
Unknown W. Brackets 6c2f87b1df GPU: Consistently use useBufferedRendering_. 2017-04-24 11:57:16 -07:00
Unknown W. Brackets c29f70e5e9 GPU: Attempt recreate of FBOs if failed. 2017-04-24 09:41:41 -07:00
Unknown W. Brackets 97620d4cca GPU: Rebuild FBOs when they now have storage. 2017-04-24 09:37:54 -07:00
Unknown W. Brackets 8e9945df97 D3D11: Approximate AUTO/CONST mip bias.
These generally work, as long as the mip levels are halving.
2017-04-22 18:22:22 -07:00
Unknown W. Brackets 6aad8ff2a2 GPU: Correct const mip 0 detection.
The other clause was mip 1.
2017-04-22 18:19:43 -07:00
Unknown W. Brackets ede9025447 SoftGPU: Simplify index conversion. 2017-04-15 21:01:17 -07:00
Unknown W. Brackets 98ba7afa83 Destroy FBOs only on actual resize.
As a side effect, this means going to settings won't reset all FBOs
anymore.  The behavior can still be obtained by changing render resolution
or rendering mode.

This makes resizing the window faster on Windows, and resumes quicker from
pause.
2017-04-13 23:36:17 -07:00
Henrik RydgårdandGitHub 0cb4344da1 Merge pull request #9603 from unknownbrackets/fb-resize
Fix framebuffer size flopping back and forth
2017-04-12 09:54:03 +02:00
Unknown W. Brackets 5a7ad5b176 Fix largest framebuf size in throughmode.
This was probably always meant to be <=, since it logically makes sense
for them to be equal.

Might fix cases of resizing down a framebuf in throughmode, where viewport
isn't as good a heuristic.
2017-04-12 00:20:50 -07:00
Unknown W. Brackets 088ced7261 Fix framebuffer size flopping back and forth.
If block transfers are keeping it larger, keep it larger.
2017-04-12 00:19:02 -07:00
Henrik RydgårdandGitHub a85b76e671 Merge pull request #9585 from unknownbrackets/gpu-clear
Skip VRAM clears when no download has been made
2017-04-10 00:51:01 +02:00
Unknown W. Brackets 4a8c661c00 Skip downloads of cleared VRAM.
If we've just cleared VRAM, make sure we don't also download that clear.
2017-04-09 15:19:06 -07:00
Unknown W. Brackets fe07b14a22 Cleanup 16-bit VRAM clearing. 2017-04-09 15:12:56 -07:00
Unknown W. Brackets 70d17d1bc7 Track flags to reduce unnecessary VRAM zeroing.
If we haven't downloaded to RAM since the last zero, no need to zero
again.  This is the most common case.
2017-04-09 15:10:07 -07:00
Henrik RydgårdandGitHub 706714e5c4 Merge pull request #9566 from unknownbrackets/gpu-blit
Fix out-of-bounds framebuffer blit on color bind
2017-04-07 09:31:18 +02:00
Unknown W. Brackets ff14495511 Fix out-of-bounds framebuffer blit on color bind.
This corrects a crash reported in Persona 3 using D3D11.
2017-04-06 18:49:48 -07:00
Unknown W. Brackets 6642bf3170 Windows: Make UI update significantly cheaper.
Setting menu strings, reloading shaders, and redrawing the menu were all
a bit slow.  This skips those things unless they've changed.
2017-04-04 20:33:22 -07:00
Henrik Rydgard 0e74ba6dc0 Fix R/B swap in D3D11 depal 2017-04-04 11:35:30 +02:00
Henrik Rydgard 22d5acb40e Depal: Use the full CLUT mode setting as the depal shader key. Fixes #9550 for both D3D11 and D3D9. 2017-04-04 11:09:29 +02:00
Henrik Rydgård 6b9b26f521 Forgot to fix this accessor too 2017-04-03 18:06:49 +02:00
Henrik Rydgård 5a8e9c4f71 Port some accessors over from #9255 to be able to catch these changes and dirty state later. 2017-04-03 17:04:58 +02:00
Henrik Rydgård 1faae8b6d6 Port some other minor changes over from #9255 2017-04-03 16:47:30 +02:00
Henrik Rydgard d581a96d79 All backends: Reorganize blend state mapping to make dirty-tracking easier 2017-04-03 16:37:08 +02:00
Henrik Rydgard c54999d26a Even the vertex interpreter, not just the jit, can crash from misaligned vertex data. 2017-04-02 23:57:59 +02:00
Henrik Rydgard 7230a8b427 Remove the "Disable alpha test" setting. It breaks too many things.
The  performance benefits in a few games on older hardware are not worth it.
We are able to automatically remove redundant alpha test in many cases now.
2017-04-01 11:36:35 +02:00
Unknown W. Brackets 32a07b9aa9 Texcache: Sprinkle comments on the secondary cache. 2017-03-26 10:18:43 -07:00
Henrik Rydgard c8187dd35c If an entry already exists in the secondary texture cache, delete it properly. Fixes #9503 2017-03-26 18:33:11 +02:00
Unknown W. Brackets bc31415bfc Texcache: Fix "reuse changed textures".
Broken by 9876365, which stopped generating new texture names/ptrs.
2017-03-25 15:30:58 -07:00
Unknown W. Brackets bb39c2e458 Texcache: Rehash textures after mem invalidation.
Before, we were doing this when we enqueued.  We need to at least do this
when an invalidation is triggered.
2017-03-25 11:49:15 -07:00
Unknown W. Brackets 7fb7a4877d Texcache: Cleanup last bound tex invalidation.
When we're deleting, we're always about to bind a new tex.
2017-03-25 11:42:24 -07:00
xebra ca7f265b11 [spline/bezier]Change all backends vertex texture format to RGBA(16 bytes). 2017-03-24 13:29:05 +09:00
xebra f4737cc1fa Fix f14b7549. 2017-03-24 00:02:18 +09:00
xebra e6af91f1b0 [spline/bezier]Trying to fix a problem that wrong texture format causes a crash. 2017-03-23 23:57:03 +09:00