Commit graph

110 commits

Author SHA1 Message Date
Unknown W. Brackets
c84efcfc97 Dirty vertexshader state on hw bezier/spline. 2017-08-14 11:36:06 +02:00
Henrik Rydgard
56cd991833 All: Only recompute the vertex shader ID when dirty 2017-08-14 11:36:06 +02:00
Henrik Rydgard
e2b179d6e2 All: Only convert depth stencil state if dirty 2017-08-14 11:14:26 +02:00
Henrik Rydgard
e4567c694c All: Only convert blend state if "dirty" 2017-08-14 11:14:26 +02:00
Unknown W. Brackets
4a56e6ff83 GE Debugger: Fix recording in softgpu. 2017-06-04 10:38:58 -07:00
Unknown W. Brackets
dca75437c3 GPU: Refactor common frame dumping code. 2017-06-03 15:29:07 -07:00
Henrik Rydgård
665a2c04cb Implement software skinning for the Vulkan backend. Fixes #9753 2017-06-02 11:47:14 +02:00
Henrik Rydgård
c173da49d3 Fix a number of bugs and stuff affecting Vulkan on Mali 2017-05-30 09:36:17 +02:00
Henrik Rydgård
2b93338255 Vulkan backend: Fix various issues, can almost run in buffered now (except the final blit) 2017-05-30 09:36:17 +02:00
Henrik Rydgard
d4e1fc8d93 More vulkan shutdown fixes 2017-05-07 11:08:09 +02:00
Henrik Rydgard
ff6fcc9179 More vulkan fixes 2017-05-07 10:53:04 +02: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
030f803002 Remove unused parameter to DestroyAllFBOs(). 2017-04-13 23:07:21 -07: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
1faae8b6d6 Port some other minor changes over from #9255 2017-04-03 16:47:30 +02: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
Henrik Rydgard
5a946d985b Unify most of the rest of the command table entries 2017-03-14 13:47:34 +01:00
Henrik Rydgard
c74d6fcde7 Unify some vertex shader related settings in the command tables 2017-03-14 13:44:18 +01:00
Henrik Rydgard
cd6d5a0d7f Unify fragment shader settings in the command table 2017-03-14 13:42:48 +01:00
Henrik Rydgard
bc641e6c56 Unify minz/maxz in command tables 2017-03-14 13:41:13 +01:00
Henrik Rydgard
903ac2fc42 Unify texture settings in the command tables 2017-03-14 13:39:32 +01:00
Henrik Rydgard
934b3db800 Unify logicop, antialias in the command table 2017-03-14 13:37:12 +01:00
Henrik Rydgard
8e6d546921 Unify the control commands in the tables 2017-03-14 13:35:25 +01:00
Henrik Rydgard
7302aca7b3 Some reordering, fixing in the command tables 2017-03-14 13:32:56 +01:00
Henrik Rydgard
ff57cacfe6 Unify morph weight, patch parameter command table entries 2017-03-14 13:30:03 +01:00
Henrik Rydgard
f767615ef8 Unify viewport/region/scissor command table entries 2017-03-14 13:28:28 +01:00
Henrik Rydgard
3de4d67fdc Unify the light parameter table entries 2017-03-14 13:26:53 +01:00
Henrik Rydgard
99711815b5 Unify some ignored command table entries 2017-03-14 13:25:52 +01:00
Henrik Rydgard
d9c19cc9ee Unify matrix, dither and signal table entries 2017-03-14 13:24:35 +01:00
Henrik Rydgard
3f795799c9 Setup a global GPU command table, and start moving stuff into it. 2017-03-14 13:21:24 +01:00
Henrik Rydgard
21d97a7947 Dirty UVSCALEOFFSET on every draw call.
This is needed since we no longer dirty it on normal changes since we
prescale, but it's still necessary for spline/bezier which generate texture coords.
2017-03-11 13:10:38 +01:00
Henrik Rydgard
e33428414f Restore flushing the GPU pipeline on changes to CLIPENABLE, as per @unknownbrackets' comments. Also remove a redundant dirtying of textures. 2017-03-11 13:10:38 +01:00
xebra
a0907ab7bb [spline/bezier]Fix shared uniform a bit. 2017-03-04 22:53:39 +09:00
xebra
f9ab61a005 [spline/bezier]Implement hardware tessellation on Vulkan. 2017-02-25 19:28:15 +09:00
Henrik Rydgard
f24b1495ba Assorted texture format cleanup, prep for supporting D3D11 on Win7 2017-02-22 16:23:04 +01:00
Henrik Rydgard
91611832dc Vulkan crashfix 2017-02-19 22:02:44 +01:00
Henrik Rydgard
6a09d45aee D3D11: Add proper checks for B4G4R4A4 format support. Not yet using the checks. 2017-02-18 01:41:08 +01:00
xebra
ef536ae54d Move wasted checks in FastRunLoop() to Execute_TexLevel() 2017-02-15 01:02:50 +09:00
xebra
945e603072 Fix fake mipmap issue related #5350 2017-02-15 01:02:50 +09:00
Henrik Rydgard
d05ef4a859 Pass through the DrawContext to texturecaches and fb managers.
This is preparation for sharing more framebuffer code between the
backends.
2017-02-05 19:51:50 +01:00
Henrik Rydgard
3ceb0a8540 Some simple renaming 2017-02-04 11:47:19 +01:00
Henrik Rydgard
0d1d6f98e4 Pass in the DrawContext to all backends 2017-01-30 20:26:47 +01:00
Henrik Rydgard
182d87cc15 Minor cleanup in GPU dispatch tables 2017-01-28 12:11:56 +01:00
Henrik Rydgard
ab6bc4cb16 Restores a lost optimization from uv prescale - avoiding flushing. Should fix #9219.
Also #ifdef away some invalid-address checks in hot paths in the GPU.
2017-01-28 11:39:34 +01:00
Henrik Rydgard
9c55e1e0de Only enable RAM Clears for the SOCOM games that require it.
Should remove the performance impact of #8994 which is bigger than
expected, it seems (cache pollution?)
2017-01-28 10:11:43 +01:00
Henrik Rydgard
d85888dc2b Table-driven dirty-flags for Vulkan and D3D9. Minor Vulkan optimization. 2017-01-24 18:12:20 +01:00
Henrik Rydgard
1fe32d380b Update lots of dirty-flag table entries 2017-01-24 18:12:20 +01:00
Henrik Rydgard
443d735a28 Activate table-driven dirty-flags in DX9 and Vulkan backends 2017-01-24 18:12:20 +01:00
Henrik Rydgard
068f2d3c71 Remove Execute_Generic in both D3D9 and Vulkan backends 2017-01-24 18:12:20 +01:00
Henrik Rydgard
c70265d7f2 Use table-driven dirtying instead of callbacks in GPU_GLES 2017-01-24 18:12:20 +01:00