Commit Graph

4521 Commits

Author SHA1 Message Date
Unknown W. Brackets
ae4c28aa4d D3D9: Support AUTO mip bias and approximate CONST. 2017-04-22 18:38:08 -07:00
Unknown W. Brackets
90ad6c0a23 D3D9: Disable mips when mip filtering disabled.
Only GE_{LINEAR,NEAREST}_MIPMAP_* enable mipmaps.
2017-04-22 18:22:59 -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
1e78642a7b SoftGPU: Remove old spline handling code. 2017-04-15 21:10:19 -07:00
Unknown W. Brackets
ede9025447 SoftGPU: Simplify index conversion. 2017-04-15 21:01:17 -07:00
Unknown W. Brackets
65439b8e96 SoftGPU: Fix indices starting after 0.
We decode to 0, so we need to offset.
2017-04-15 20:49:49 -07:00
Unknown W. Brackets
b543c0d0e4 SoftGPU: Use common spline/bezier rendering.
There's nothing inherently non-software rendering about this.
2017-04-15 20:08:37 -07:00
Unknown W. Brackets
b67650a8ff SoftGPU: Force render res to 1x.
This fixes issues with the vertex preview in the GE Debugger.
2017-04-15 19:54:42 -07:00
Unknown W. Brackets
31ddcd48ed SoftGPU: Fix crash on matrix load.
Just stubbing the draw engine here.
2017-04-15 19:53:56 -07:00
Unknown W. Brackets
dfed20701a SoftGPU: Correct negative coord handling.
Fixes #5159 - we need this signed to handle negative values properly.
2017-04-15 19:52: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
Unknown W. Brackets
030f803002 Remove unused parameter to DestroyAllFBOs(). 2017-04-13 23:07:21 -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
c899882034 Fix issues with software GPU on D3D11 2017-04-11 12:53:11 +02: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
d0f3e5cb89 Don't wipe the Vulkan pipeline key, allow for building it incrementally 2017-04-03 17:26:54 +02:00
Henrik Rydgård
156bd47155 D3D11: Don't manually wipe the state keys. Make sure that the keys are properly initialized. 2017-04-03 17:20:31 +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 Rydgård
0903bfb5f5 More D3D11 reorg 2017-04-03 16:37:11 +02:00
Henrik Rydgård
73d762f506 Reorganize raster state mapping 2017-04-03 16:37:11 +02:00
Henrik Rydgard
cffb1d7014 Reorganize depth-stencil 2017-04-03 16:37:11 +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
97058b4db7 Apply the D3D11 loco roco fix identically to the other backends
To make centralization easier, and this should be a problem for the
other backends as well.
2017-04-01 21:17:58 +02:00
Henrik Rydgard
2ebba56758 Fix crash in LocoRoco with D3D11 when hitting a spiky (a broken texture gets created with too many mipmaps for its size) 2017-04-01 20:36:44 +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
Henrik Rydgård
b0b72cd63e Merge pull request #9510 from xebra/fix_hwtess_gles
Fix hwtess gles
2017-03-28 13:17:32 +02:00
xebra
73a898df2a GLES:Fix again compatibility for instanced rendering. 2017-03-28 19:49:37 +09: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
67fb745278 Merge pull request #9505 from hrydgard/remove-gl-bgra-path
Remove BGRA path from GLES.
2017-03-26 10:43:45 -04:00
Henrik Rydgård
c1b37bd2ad Merge pull request #9506 from xebra/fix_hwtess_gles
GLES:Fix compatibility checks for instanced rendering.
2017-03-26 12:08:20 +02:00
xebra
04e1e1a460 GLES:Fix compatibility checks for instanced rendering. 2017-03-26 19:00:20 +09:00
Henrik Rydgard
10f144ef2e Remove BGRA path from GLES. Less code to test and support and it does no longer appear to have any benefit. See new comments in #5874 2017-03-26 11:39:25 +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