Commit Graph

697 Commits

Author SHA1 Message Date
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ård
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ård
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ård
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
xebra
f14b75492d [spline/bezier]Split SendDataToShader() into two functions. 2017-03-23 23:28:38 +09:00
Henrik Rydgård
22782b6439 UWP: Fix DPI calculations for touch. Implement back button support. 2017-03-23 10:02:29 +01:00
Henrik Rydgård
86990b3752 Disable shader translation on UWP mobile for now (TLS issues) 2017-03-23 10:02:28 +01:00
Henrik Rydgård
4151fc5250 Adjust DIRTY_ALL_UNIFORMS to match the new reality. 2017-03-23 09:55:50 +01:00
Unknown W. Brackets
3fbb545451 Allow MakePixelTexture to use a subrange.
For example, if it has a larger texture it wants to reuse, it can control
this via texcoords.  Let's keep it at top left, though.
2017-03-22 20:56:26 -07:00
Unknown W. Brackets
d4ff7cc928 Spline: Simplify uniforms/dirty to one check.
This makes backends more consistent in which values they use, and reduces
the (relatively uncommon compared to other drawcalls) dirty checks for
splines.
2017-03-19 20:05:56 -07:00
Unknown W. Brackets
a1f59deafe Fix some type narrowing warnings and typos. 2017-03-19 07:44:31 -07:00
Unknown W. Brackets
18484bed3d D3D11: Correct non-palette 16 bit textures on Win7.
These weren't being expanded.
2017-03-18 20:10:21 -07:00
Unknown W. Brackets
41dacb792c Texcache: Reduce duplicated expand32 code. 2017-03-18 20:09:38 -07:00
Unknown W. Brackets
e9625707fa x86: Implement Jit_TcU16Through.
This just ports the updateSide logic from other types.
2017-03-18 13:44:47 -07:00
Unknown W. Brackets
b21c081860 Texcache: Clarify STATUS_FREE_CHANGE usage. 2017-03-18 12:08:06 -07:00
Unknown W. Brackets
404c61d77d Minor typo fixes. 2017-03-18 11:51:05 -07:00
Unknown W. Brackets
d0ea5ed72b Texcache: Always mark videos as freq changing.
This prevents scaling of the first frame in some cases, when later frames
would also not be scaled.  Improves performance and reduces frame
mismatch.
2017-03-18 11:49:30 -07:00
Unknown W. Brackets
30ff5d6cdb Texcache: Apply freq change flag to minihash fail.
Previously, by mistake, only full hash fails could flag a frequently
changing texture - minihash checks skipped this, causing scaling
performance issues.

Fixes #9125.
2017-03-18 11:44:06 -07:00
Unknown W. Brackets
bea6d787c0 Texcache: Cleanup some code formatting.
Makes it more readable.  No functional impact.
2017-03-18 11:43:26 -07:00
Henrik Rydgård
94f16e3b7c GPU: Move "if (resized_)" to BeginHostFrame to avoid desynchronized settings.
Also wipe the input layout cache on D3D11 on resize.

Fixes #9438.
2017-03-17 11:26:11 +01:00
Henrik Rydgård
17a250df7a Always trigger gpu->Resized when exiting GameSettingsScreen.
Strangely, this does NOT help #9438.
2017-03-17 10:27:49 +01:00
Henrik Rydgard
45a99bbe33 Eliminate annoying warning in non-buffered rendering mode 2017-03-14 10:19:49 +01:00