Commit Graph

650 Commits

Author SHA1 Message Date
Henrik Rydgård dd1399e982 Fix some missing dirty flags (affects FS_BIT_LMODE) 2017-08-20 20:14:41 +02:00
Henrik Rydgård b9b2656e93 More vulkan microoptimizations. Add more profiler scopes. 2017-08-18 13:48:11 +02:00
Henrik Rydgård e8a81df8d8 FRAGMENT_SHADER needs to be marked dirty if shademode changes. Fixes #9904.
No clue why the problem only happened on GL though...
2017-08-17 21:02:09 +02:00
Henrik Rydgård 5680332343 Minor cleanups 2017-08-17 15:20:21 +02:00
Henrik Rydgård 2c4e5e2303 Fastpath in fastrunloop when diff=0. Remove need for Execute for UV scale/offset. 2017-08-17 15:20:16 +02:00
Henrik Rydgård 71baecabd6 Make FLAG_FLUSHBEFORE a no-op, move flushes into the execution functions.
It would only be necessary if we needed the previous value, which we
don't do in any of these.
2017-08-17 15:20:10 +02:00
Henrik Rydgård c4ccf5b734 Simple micro-optimization in AdvanceVerts 2017-08-15 12:02:47 +02:00
Henrik Rydgard 078e1151f9 Dirty-flag the fragment shader ID. 2017-08-14 11:36:07 +02:00
Henrik Rydgard 56cd991833 All: Only recompute the vertex shader ID when dirty 2017-08-14 11:36:06 +02:00
Henrik Rydgard 4e55654522 Add some missing VIEWPORTSCISSOR dirtying. 2017-08-14 11:35:11 +02:00
Unknown W. Brackets aa2269020a Dirty viewport state on framebuf resize. 2017-08-14 11:14:26 +02:00
Henrik Rydgard 1098bf7342 All: Only convert viewportscissor state if dirty 2017-08-14 11:14:26 +02:00
Henrik Rydgard e439055a32 All: Only convert raster state if dirty 2017-08-14 11:14:26 +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 3960a4d791 Ensure everything is dirty on frame start. 2017-08-14 11:14:26 +02:00
Henrik Rydgård 35c8a05d29 Minor GPU disassembler update 2017-08-05 18:37:03 +02:00
Unknown W. Brackets f1429bc23a GPU: Stall properly on matrix data.
Hit an infinite loop because it kept passing the stall pause and looping.

Found when recording the God of War demo.
2017-06-04 14:17:23 -07:00
Unknown W. Brackets 4a56e6ff83 GE Debugger: Fix recording in softgpu. 2017-06-04 10:38:58 -07:00
Unknown W. Brackets fcfbe8cabb GE Debugger: Fix matrix dumping.
Record wasn't seeing the commands to dump them.
2017-06-04 10:38:53 -07:00
Unknown W. Brackets 37a894a558 GE Debugger: Record memcpy/memset too. 2017-06-03 15:29:10 -07:00
Unknown W. Brackets cbbd3cac7e GE Debugger: Initial structure for GE data dumping.
This snapshots the GE commands and drawing to facilitate debugging.
2017-06-03 15:29:09 -07:00
Unknown W. Brackets dca75437c3 GPU: Refactor common frame dumping code. 2017-06-03 15:29:07 -07:00
Henrik Rydgård 14900d4c1b Fix crash when pressing F12 in software mode. 2017-05-24 11:10:03 +02:00
Unknown W. Brackets 10e511273a GPU: Flush on mipmap slope change. 2017-05-12 20:30:48 -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 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 438af2f4fa Core: Separate collecting and displaying stats. 2017-03-23 18:57:18 -07:00
Henrik Rydgard fbee328293 Don't dirty texture state when kicking off a display list. This might hide real bugs and affect performance, and should not be necessary. 2017-03-18 21:47:58 +01:00
Henrik Rydgard 627866355b Restore two accidentally deleted command table entries. 2017-03-14 15:45:01 +01: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 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 Rydgård 90e0079c98 GE Debugger D3D11: Support displaying the current texture 2017-03-06 16:46:15 +01:00
Henrik Rydgard 26a2d42731 Big mutex overhaul - remove our custom ones, make them non-recursive where possible 2017-02-28 11:40:29 +01:00
Henrik Rydgard e8396b10f9 D3D11: Implement screenshots. 2017-02-18 00:43:02 +01:00
Henrik Rydgard 0e8aeaea3a D3D11: Implement basic framebuffer readback.
Also make debug interfaces more consistent.
2017-02-18 00:07:49 +01:00
xebra 59fd5da438 Fix fake mipmap hacks. 2017-02-15 22:07:58 +09:00
xebra 7975addad0 Fix small issue. 2017-02-15 01:02:51 +09:00
xebra ef536ae54d Move wasted checks in FastRunLoop() to Execute_TexLevel() 2017-02-15 01:02:50 +09:00