5287 Commits

Author SHA1 Message Date
Henrik Rydgård
3cd92b4d90 Vulkan: Add a (disabled) facility to force image layouts to GENERAL, for debugging barrier issues 2018-03-15 16:23:23 +01:00
Carlos Estrague / Mrc_munir
f3040949a3
Fix a typo extra " in some header
Fix a typo introduced in https://github.com/hrydgard/ppsspp/pull/10715
2018-03-13 20:16:41 +01:00
Henrik Rydgård
7a8310ae5e Tiny unification of code. Save the GL shader cache a bit less often. 2018-03-13 13:35:58 +01:00
Henrik Rydgård
a0fa199ce3
Merge pull request #10715 from unknownbrackets/loading
UI: Show more detailed loading status
2018-03-13 10:44:07 +01:00
Unknown W. Brackets
88e01c7944 UI: Show more detailed loading status.
It's sometimes taking longer, so this may make it easier to identify.

See #10673.
2018-03-12 18:06:46 -07:00
Henrik Rydgård
d8651fd85b Combine the lightAngle and spotCoef float uniforms into one float2. Saves 64 bytes from the light uniform buffer, making it an even 512.
Probably a very small perf optimization.
2018-03-12 11:17:45 +01:00
Henrik Rydgård
0ed3deabe6 Fix #10692 (crash when starting games from command line). Throw in some minor Vulkan fixes as well. 2018-03-08 16:35:13 +01:00
Henrik Rydgård
b6cbbceac9 MOVUPS to be safe. 2018-03-05 16:23:07 +01:00
Henrik Rydgård
91b565ae20 Minor simplification in X86/X64 vertex decoder jit 2018-03-05 13:19:36 +01:00
Henrik Rydgård
50de13d3d7 Optimize the "inner interpreter" for God of War character drawing. Speeds the games up by 4% or so.
(measured on the title screen though..)
2018-03-05 12:50:51 +01:00
Henrik Rydgård
4cf5999bc8 Move the vertTypeID calculation out of DrawEngine. Need to shorten SubmitPrim as much as possible. 2018-03-05 12:28:10 +01:00
Henrik Rydgård
87575910df Oops, fix hardware tess in Vulkan (after removing hw skinning, we need to adjust the binding number) 2018-03-05 00:43:54 +01:00
Henrik Rydgård
8ff5704fbf Fix indentation mistake, minor cleanup. 2018-03-05 00:03:47 +01:00
Henrik Rydgård
f086a0915f Further cleanup after the removal of hardware skinning. 2018-03-05 00:03:47 +01:00
Henrik Rydgård
6fa9fcefb2 Comment fixes, reindentation. 2018-03-05 00:03:47 +01:00
Henrik Rydgård
fcdb816235 Remove gstate_c.deferredVertTypeDirty 2018-03-05 00:03:47 +01:00
Henrik Rydgård
40db61a680 Remove further remains of hardware skinning. Fixes #10661 2018-03-05 00:03:47 +01:00
Henrik Rydgård
44100c6c1d VertexLoader: Remove now-unused weights translation code 2018-03-05 00:03:47 +01:00
Henrik Rydgård
dcb773d624 Start removing support for hardware skinning. 2018-03-05 00:03:47 +01:00
Henrik Rydgård
978f8e73e5 Remove checks that disabled software skinning if there was morph. 2018-03-05 00:03:47 +01:00
Henrik Rydgård
66cbad443a Add necessary decode functions to support morph+skin 2018-03-05 00:03:47 +01:00
Henrik Rydgård
45cfda4aa0 Small refactoring in VertexDecoderCommon 2018-03-05 00:03:47 +01:00
Henrik Rydgård
d3665a8482 Minor cleanup 2018-03-05 00:03:47 +01:00
Henrik Rydgård
b74634aa3b Turn off the inner interpreter when stepping in the GE debugger. Fix comment. 2018-03-02 07:06:58 +01:00
Henrik Rydgård
c7dcb7c365 D3D9/D3D11: Fix GPU feature detection. Enforce accurate depth on nVidia as well, they no longer seem to support reverse depth so it's needed as a workaround. Fixes #10655 2018-03-01 09:38:06 +01:00
Henrik Rydgård
4130bcd416 inner interpreter: support skipping regular nops 2018-03-01 09:38:06 +01:00
Henrik Rydgård
995a1cfc61
Merge pull request #10658 from hrydgard/inner-prim-interpreter
Execute_Prim: Add a smaller "inner interpreter" to speed long up sequences of PRIM commands
2018-02-28 21:50:05 +01:00
Henrik Rydgård
28e202a089 Buildfix, oops 2018-02-28 19:15:29 +01:00
Henrik Rydgård
83c82a5ebd GL: Fix depal issue where we forgot to set vp/scissor properly. Update some asserts. 2018-02-28 18:45:14 +01:00
Henrik Rydgård
ef3341e34f Don't use the inner interpreter when debug recording 2018-02-28 09:18:53 +01:00
Henrik Rydgård
292f116821 Execute_Prim: Add a smaller "inner interpreter" to avoid going back to the runloop during long sequences of PRIM commands.
Helps performance by a quite measurable 1-4% in several PRIM-heavy games.
2018-02-28 09:18:41 +01:00
Henrik Rydgård
07afda1db0 Add an extra check to FindTransferFramebuffers to avoid misdetecting fb blits that end up out of bounds when we perform them.
Affected Burnout Legends (which would crash the Vulkan device)
2018-02-28 01:01:45 +01:00
Henrik Rydgård
f5dd9c17cd Add comment trying to clarify shutdown of GPU_GLES, restore the wipe, minor tweaks. Should help #10652
This reverts commit 10be0cad96f9a48b510254c9050f03748ac2b1eb.
2018-02-27 22:04:24 +01:00
Henrik Rydgård
14c93bdc2b Minor code/logging cleanups. 2018-02-27 19:44:11 +01:00
Henrik Rydgård
4b784e6035
Merge pull request #10653 from hrydgard/submitprim-unify
Unify the SubmitPrim function, and some others, between the HW backends
2018-02-26 16:17:16 +01:00
Henrik Rydgård
10be0cad96 GL: Don't wait-for-idle when shutting down the PSP GPU, it's the wrong place. Should fix #10652 2018-02-26 15:48:45 +01:00
Henrik Rydgård
a78365e73d Remove duplicate declaration of GPUCommon::CmdFunc 2018-02-26 15:19:11 +01:00
Henrik Rydgård
0b4b2bfe9c Avoid the most common virtual call when possible. 2018-02-26 13:51:14 +01:00
Henrik Rydgård
64ec46e705 Unify FramebufferDirty()/FramebufferReallyDirty() for the hw backends 2018-02-26 11:58:17 +01:00
Henrik Rydgård
78467d6092 Unify FastRunLoop for the hardware backends. 2018-02-26 11:52:16 +01:00
Henrik Rydgård
6a2f45c2e1 Unify UpdateCmdInfo 2018-02-26 11:48:56 +01:00
Henrik Rydgård
8cef1f0f8d GPU: Unify command table (cmdInfo_) 2018-02-26 11:44:02 +01:00
Henrik Rydgård
a8a34fef9c Virtualize CheckGPUFeatures 2018-02-26 11:35:37 +01:00
Henrik Rydgård
feb4694acc Unify DispatchSubmitPrim as much as possible 2018-02-26 11:33:17 +01:00
Henrik Rydgård
967018b7f8 Unify Execute_LoadClut 2018-02-26 11:32:02 +01:00
Henrik Rydgård
c7f8f4c5ca Unify Execute_Prim 2018-02-26 11:22:27 +01:00
Henrik Rydgård
23980065ba Unify all the DrawEngine::SubmitPrim 2018-02-26 11:07:30 +01:00
Henrik Rydgård
eb014e8c6b Try to be more consistent when initializing vulkan structs. 2018-02-25 12:15:29 +01:00
Henrik Rydgård
b7b5c5e211 Follow the spec rules about errors when allocating from descriptor pools
See https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkAllocateDescriptorSets.html
2018-02-25 12:15:29 +01:00
Henrik Rydgård
8e0e5f9aa6 Extract RecreateDescriptorPool() 2018-02-25 12:15:29 +01:00