Commit Graph
9567 Commits
Author SHA1 Message Date
Henrik Rydgård dc0f7ca8ee VK: Copy depth buffer if we can't blit. Some GPUs can't blit to depth.
Fixes some recent issues with Intel GPUs on Vulkan.
2020-10-11 10:57:35 +02:00
Henrik Rydgård b28baed7d3 Create a safer variant of BlockTransferAllowCreateFB, enable for FF Type 0
Performance improvement by avoiding unnecessary readbacks.

New one is called IntraVRAMBlockTransferAllowCreateFB.

This one only allows intra-VRAM block transfers to happen on-GPU, such as the one this
game uses for bloom. Good chances to avoid missing stuff that actually requires
real readback, if there's any.
2020-10-10 23:59:51 +02:00
shenweipandHenrik Rydgård a66cb1237d Warning fixes. 2020-10-10 19:18:46 +02:00
Henrik Rydgård 93e327ab78 Vulkan: Automatically generate mipmaps for replacement textures. 2020-10-05 22:36:55 +02:00
Henrik Rydgård 886a8b1ac6 Remove Timer.cpp/h. Move various collections into Common/Data/Collections. 2020-10-05 21:05:23 +02:00
Henrik Rydgård 4310e35714 Windows: Remove the native project. 2020-10-05 06:56:10 +02:00
Henrik Rydgård 0e3a84b4a8 Move most GPU things to Common.
It works after the move, on Windows and Android at least.

Deletes the D3DX9 shader compiler loader, which was not used.
2020-10-04 23:39:02 +02:00
Henrik RydgårdandGitHub 4f43cff5ca Move fileutil, net, image loaders, ui to Common. (#13506)
* Move and rename file_util/fd_util to Common/File/FileUtil and DirListing

Let's also move net while we're at it.

Move the ZIM/PNG loaders over to Common.

Move the UI framework into Common

iOS buildfix

* Buildfix

* Buildfixes

* Apple buildfix

* This typo again..

* UWP buildfix

* Fix build of PPSSPPQt, such as it is (it's not in good condition...)

* Guess what? Another buildfix.
2020-10-04 20:48:47 +02:00
Henrik Rydgård f01ba6dc84 Move NativeApp.h to Common/System, split into NativeApp.h and System.h
Buildfix
2020-10-04 11:42:16 +02:00
Henrik Rydgård b7edf75437 Move Display.cpp/h to Common. 2020-10-04 11:42:16 +02:00
Henrik Rydgård 821817e6d4 Move the profiler to Common 2020-10-04 11:42:16 +02:00
Henrik Rydgård 989e353482 Common.h shouldn't include Log.h.
Buildfixes

More buildfixes. Move JSON code to common.
2020-10-04 11:42:14 +02:00
Henrik Rydgård 9e41fafd0d Move math and some file and data conversion files out from native to Common.
Buildfixing

Move some file util files

Buildfix

Move KeyMap.cpp/h to Core where they belong better.

libretro buildfix attempt

Move ini_file

More buildfixes
2020-10-04 09:12:46 +02:00
Henrik Rydgård ff8148dd92 Move native/util, native/data and native/i18 to Common/Data.
Also move colorutil.cpp/h

linking build fix experiment

Delete a bunch of unused CMakeLists.txt files

CMakeLists.txt linking fix

Don't include NativeApp.h from any headers.

Android.mk buildfix

Half of the UWP fix

Buildfix

Minor project file cleanup

Buildfixes

Guess what? More buildfixes!
2020-10-04 07:28:29 +02:00
Henrik Rydgård 3162f30158 Merge base/basictypes.h into Common/Common.h (mostly). 2020-09-29 15:51:51 +02:00
Henrik Rydgård ed88761ecc Merge ext/native/stringutil.cpp/h into Common/StringUtils.cpp/h. 2020-09-29 15:51:51 +02:00
Henrik Rydgård 536d881626 Very minor optimization (divisions by constants are faster unsigned) 2020-09-29 00:36:29 +02:00
Henrik Rydgård 6fb0e92de3 Fix issue with duplicate texture dumps.
Fixes #13487.
2020-09-29 00:30:08 +02:00
barbudreadmonandGitHub a8dd3ef553 fix #13471 2020-09-27 16:38:24 +02:00
Henrik Rydgård 054acf768c Don't cache time in a variable.
A little weirdness in the code that has stuck around for a long, long
time. It's really not necessary and mostly just confusing.
2020-09-24 23:52:43 +02:00
Henrik Rydgård 4cfafb4605 Some GPU code cleanup. Disable some unnecessary reporting. 2020-09-24 23:01:23 +02:00
Henrik Rydgård 2a2a4a21d9 More cleanup 2020-09-24 10:03:07 +02:00
Henrik Rydgård deedc7a1fe Cleanup 2020-09-24 09:49:28 +02:00
Henrik Rydgård d8ddef150f IndexGenerator::AddStrip: Avoid the fallback by writing a few extra indices if necessary.
Actually a decent boost.
2020-09-24 09:36:39 +02:00
Henrik Rydgård be54050521 Also optimize IndexGenerator::AddStrip for ARM NEON. 2020-09-24 09:24:03 +02:00
Henrik Rydgård df9a5cc0f2 Buildfix 2020-09-24 02:09:39 +02:00
Henrik Rydgård 1a2597a513 SSE-optimize IndexGenerator::AddStrip. Shaves about half a percent from GoW. 2020-09-24 02:03:15 +02:00
Henrik Rydgård a9fef066b5 Reduce string allocations in Vulkan memory allocator 2020-09-24 00:32:52 +02:00
Henrik Rydgård b8ab04f53d Remove some reporting that's normally just the result of garbage-as-display-list-execution. 2020-09-22 21:57:51 +02:00
Henrik Rydgård 5ac6a9b3fd Fix slowdowns due to careless use of auto 2020-09-22 21:24:16 +02:00
Henrik Rydgård 3e3a40da8c Mark the PPGe font texture as reliable to avoid hashing it. 2020-09-22 21:13:30 +02:00
Henrik RydgårdandGitHub 4ccde48485 Merge pull request #12924 from iota97/user-chain
Postprocessing: User chain support
2020-09-22 09:20:51 +02:00
Henrik RydgårdandGitHub a0251eae27 Merge pull request #13456 from hrydgard/tex-fixes-3
More code cleanup in texture cache
2020-09-21 11:17:06 +02:00
Henrik Rydgård 8192f5174c Quick fix for #13459 2020-09-21 10:31:14 +02:00
Henrik Rydgård 2d06730762 Fix regression where Gran Turismo ended up recreating the framebuffer on every frame in the menu.
Should help #13458 slightly (but there's more to fix).
2020-09-21 09:56:52 +02:00
Henrik Rydgård ea2d2ec434 Remove unused lastBoundTexture from Vulkan 2020-09-21 08:57:19 +02:00
Henrik Rydgård 45f8b2721e Comment fixes. Minor tweak. 2020-09-21 08:56:58 +02:00
Henrik Rydgård beb1d3f715 Cleanups in/around BlitFramebufferDepth 2020-09-21 08:56:58 +02:00
Henrik Rydgård dcd33a4692 Remove redundant bind on GL texture build. Improve dirtying of texture state. 2020-09-21 08:56:58 +02:00
Henrik Rydgård eaca9d1b59 Remove dirtying of TEXTURE_PARAMS from ForgetLastTexture, not its responsibility. 2020-09-21 08:56:58 +02:00
Henrik Rydgård b6efc65c94 Set the texture dirty flags when binding a new framebuffer. 2020-09-21 08:56:58 +02:00
Henrik Rydgård 277333682f GPU debug stats: Show how many bytes of texture data we hash per frame 2020-09-20 22:09:29 +02:00
Henrik Rydgård f288e64679 Simplify NotifyFrameBuffer - only needs one call for both "channels" now. 2020-09-20 22:09:29 +02:00
Henrik Rydgård 3093b9c7bf Share GPUS stats formatting code between the backends (easier to add new stats) 2020-09-20 22:09:25 +02:00
Henrik Rydgård bdcf2c5cff Have to invalidate "lastBoundTexture" when binding framebuffers as texture.
Fixes parts of #13431 for D3D11 at least.

Will probably soon get rid of this concept, it's only useful in D3D9/11 and
those are probably not gonna lose much perf if we remove this minor
state caching.
2020-09-20 20:44:18 +02:00
Henrik Rydgård 707e9cf7ac Remove some unnecessary function parameters, improve some comments. 2020-09-20 20:44:18 +02:00
Henrik Rydgård 7ed1ade56b A couple of D3D11 fixes. 2020-09-19 14:14:06 +02:00
Henrik Rydgård 277f0e4ec6 Fix bug in GLES texture filter setup 2020-09-17 20:53:02 +02:00
Henrik Rydgård d6d72db0a9 Unify BlitFramebufferDepth. 2020-09-17 20:53:02 +02:00
Henrik Rydgård d0f7b1e30f Make the implementations of CopyFramebufferDepth more similar.
Also avoid matching framebuffers with bad z for copies.
2020-09-17 20:52:45 +02:00