Commit Graph

5174 Commits

Author SHA1 Message Date
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 10be0cad96.
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
Henrik Rydgård
5d77c63216 Vulkan: Need to count allocated descsets per frame separately from the map, since tess isn't even in-frame cached. 2018-02-24 12:15:22 +01:00
Henrik Rydgård
d1a8514e72 Vulkan: Dynamically grow descriptor pools as needed. Should help #10641 and similar issues. 2018-02-24 10:24:11 +01:00
Unknown W. Brackets
506dfcb916 GLES: Fix texture scaling.
Oops, and I had broken it again.
2018-02-22 19:58:52 -08:00
Unknown W. Brackets
4b8d8c875d Qt: Remove old texture debug API.
No one's testing it and it's not the best way.  We have a better
implemented API and should use it instead.
2018-02-19 09:09:35 -08:00
Unknown W. Brackets
ecd1a04e44 GLES: Fix unpack misalignment, Qt debugger freeing.
We no longer use unpack, so we should always decode to w not bufw.
2018-02-19 09:02:22 -08:00
Henrik Rydgård
8fcaa651a5
Merge pull request #10627 from unknownbrackets/gl-aligned
GLES: Properly free when upscaling textures
2018-02-19 10:08:41 +01:00
Unknown W. Brackets
438951f844 GLES: Properly free when upscaling textures.
Oops.  Fixes crash introduced by #10603.
2018-02-18 19:03:31 -08:00
Henrik Rydgård
78449ce675
Merge pull request #10624 from unknownbrackets/texcache
TexCache: Decimate CLUT variants more often
2018-02-18 22:02:18 +01:00
Unknown W. Brackets
e97046da4e TexCache: Decimate aggressively with many variants.
It should be safe to decimate after fewer frames with a threshold like
this.
2018-02-18 12:29:14 -08:00
Unknown W. Brackets
d61fd5f6a6 TexCache: Decimate CLUT variants more often.
When creating a new texture, we determine if it has CLUT variants and
decimate more often.
2018-02-18 12:29:01 -08:00
Henrik Rydgård
7421f2aff6 Postprocessing: Fix bug where scissor cut off the image if render resolution > display resolution 2018-02-12 14:10:54 +01:00
Henrik Rydgård
88e8229159 GL: Need to recompile postshaders on Resized() (which is a bit of a misnomer) 2018-02-12 14:01:52 +01:00
Unknown W. Brackets
0474ff5c23 GLES: Use aligned memory for textures.
We use SSE on them, and they used to be aligned, and must be aligned in
PSP RAM, so keep them aligned.

This only really affects 32-bit, since allocs will typically be aligned on
64-bit anyway.

Fixes #10601.
2018-02-11 08:13:57 -08:00