Commit Graph

5935 Commits

Author SHA1 Message Date
Fernando Sahmkow ba73142ce0 video_core: implement formats for N64 emulation 2022-04-14 11:06:27 -04:00
Liam 2d4f844b1b buffer_cache: cap vertex buffer sizes 2022-04-14 10:46:48 -04:00
Liam 3bffb0464b maxwell3d: add small_index_2 register 2022-04-14 09:57:06 -04:00
bunnei 68b5568576 Merge pull request #8149 from liamwhite/front-face
OpenGL: flip front faces if Z scale is inverted
2022-04-09 01:39:39 -07:00
Merry e8a60754e9 video_core: Replace lock_guard with scoped_lock 2022-04-07 19:44:07 +01:00
Fernando S a426c9e941 Merge pull request #8161 from liamwhite/gl-s8d24
OpenGL: fix S8D24 to ABGR8 conversions
2022-04-07 16:59:41 +02:00
Fernando S 55841eb669 Merge pull request #8152 from liamwhite/gl-crop
OpenGL: fix cropping
2022-04-07 16:58:59 +02:00
Liam 1027ffa911 OpenGL: fix S8D24 to ABGR8 conversions 2022-04-06 19:44:33 -04:00
bunnei dcb17246d9 Revert "texture_cache/util: Remove unneeded ReadBlockUnsafe" 2022-04-04 16:26:53 -07:00
ameerj ef60f353a8 texture_cache/util: Remove unneeded ReadBlockUnsafe
This call was reading GPU memory into the dst buffer, which is then overwritten by the SwizzleTexture call.
2022-04-04 15:57:54 -04:00
Liam 27116accd9 OpenGL: fix cropping 2022-04-04 12:51:09 -04:00
Liam b49aaadc87 Vulkan: crop to screen dimensions if crop not explicitly requested 2022-04-04 11:45:15 -04:00
Liam a9d9b29461 OpenGL: propagate face flip condition 2022-04-04 10:32:14 -04:00
Liam 6c926f3cac OpenGL: flip front faces if Z scale is inverted 2022-04-04 10:19:40 -04:00
Andrea Pappacoda d9044f00e1 fix: typos 2022-04-02 16:34:07 +02:00
Fernando S 922f189a59 Merge pull request #8128 from FernandoS27/gc-fixes
GPU Garbage Collection: Fix regressions.
2022-04-01 17:19:55 +02:00
Fernando S f83a76084e Merge pull request #8066 from ameerj/gpu-decode-fixes
codec: Fix GPU decoder detection on Windows and a memory leak
2022-04-01 01:37:22 +02:00
Fernando Sahmkow 29660bc55e GPU Garbage Collection: Fix regressions. 2022-04-01 01:36:24 +02:00
bunnei 871454ec54 Merge pull request #8076 from ameerj/nv-vk-msaa-scale
Vulkan: Use 3D helpers for MSAA scaling on NV drivers 510+
2022-03-30 23:00:44 -07:00
ameerj ddafe40dc1 gl_rasterizer: Avoid scenario locking already owned mutex
gpu.TickWork() may lock the texture_cache and buffer_cache mutexes, which are owned by the thread prior to invoking TickWork().

Defer invoking gpu.TickWork() until the scope ends, where the owned mutexes are released.
2022-03-28 20:35:15 -04:00
bunnei b149526098 Revert "Memory GPU <-> CPU: reduce infighting in the texture cache by adding CPU Cached memory." 2022-03-26 12:38:30 -07:00
Fernando Sahmkow bcee5061e7 Texture Cache: Add Cached CPU system. 2022-03-25 04:24:05 +01:00
bunnei c989676dc5 Merge pull request #7720 from FernandoS27/yfc-gc
First Nugget: Reworked Garbage Collection to be smarter [originally from Project YFC]
2022-03-24 20:16:11 -07:00
Fernando Sahmkow 392612a2d3 GC: Address Feedback. 2022-03-25 03:05:56 +01:00
bunnei 1f6dcd3784 hle: nvflinger: Migrate android namespace -> Service::android. 2022-03-24 18:13:33 -07:00
bunnei f1a91e0397 hle: vi: Integrate new NVFlinger and HosBinderDriverServer service. 2022-03-24 18:13:33 -07:00
bunnei 476f456d2f hle: nvflinger: Move BufferTransformFlags to its own header. 2022-03-24 18:13:32 -07:00
bunnei 3396730b85 hle: nvflinger: Move PixelFormat to its own header. 2022-03-24 18:13:32 -07:00
Fernando Sahmkow 2bd91a6f84 Garbage Collection: Final tuning. 2022-03-25 01:51:52 +01:00
Fernando Sahmkow 35675b986e Buffer Cache: Tune to the levels of the new GC. 2022-03-25 01:51:51 +01:00
Fernando Sahmkow 7ea1f39bd0 Garbage Collection: Redesign the algorithm to do a better use of memory. 2022-03-25 01:51:51 +01:00
ameerj 9b1322ef20 Vulkan: Use 3D helpers for MSAA scaling on NV drivers 510+
Nvidia Vulkan drivers 510+ crash when blitting MSAA images. Fall-back to 3D scale helpers for MSAA image scaling.
2022-03-23 23:30:17 -04:00
Liam c6b7c191ea buffer_cache: reset cached write bits after flushing invalidations 2022-03-23 20:59:01 -04:00
bunnei c9ffc287bf Merge pull request #8048 from ameerj/include-purge
general: Reduce unused includes across the project
2022-03-21 18:03:54 -07:00
ameerj 59cea3d34d codec: Plug GPU decoder memory leak 2022-03-21 20:22:52 -04:00
ameerj cd9aebaec0 codec: Disable HW_FRAMES method check on Windows
It was reported that this method causes crashes on certain Linux decoding backends, hence the check to avoid it.

This subsequently caused Windows GPU decoders to never be selected and always fall back to CPU decoding, disable the check on Windows for now.
2022-03-21 20:21:09 -04:00
bunnei 516853d8a3 Merge pull request #7812 from FernandoS27/made-straight-from-the-nut
BufferCache: Find direction of the stream buffer increase.
2022-03-20 15:23:53 -07:00
Fernando Sahmkow 6182828ec5 BufferCache: Find direction of the stream buffer increase. 2022-03-20 21:37:23 +01:00
Fernando S 2e9974228e Merge pull request #8036 from ameerj/starbit-nv
vk_texture_cache: Do not reinterpret DepthStencil source images
2022-03-20 13:35:59 +01:00
bunnei d7a39fa3a1 Merge pull request #7840 from lioncash/bitor
texture_cache: Amend unintended bitwise OR in SynchronizeAliases
2022-03-20 02:19:30 -07:00
ameerj f9709bb9e9 general: Fix clang/gcc build errors 2022-03-20 02:25:09 -04:00
ameerj e70b4f3fc5 common: Reduce unused includes 2022-03-19 15:01:31 -04:00
ameerj b837219423 video_core: Reduce unused includes 2022-03-19 15:01:31 -04:00
ameerj 1967757627 general: Reduce core.h includes 2022-03-18 02:13:02 -04:00
ameerj 8281bfa93d vk_texture_cache: Do not reinterpret DepthStencil source images
Fixes star pointer interactions in Super Mario Galaxy on some drivers, notably Nvidia.

Co-Authored-By: Fernando S. <1731197+fernandos27@users.noreply.github.com>
2022-03-17 20:55:05 -04:00
Fernando S 16d882b843 Merge pull request #8030 from liamwhite/s8d24-conversion
Vulkan: convert S8D24 <-> ABGR8
2022-03-18 00:36:06 +01:00
Liam 9277c9c297 Address review comments 2022-03-16 18:00:42 -04:00
Fernando S 387c4c4dee Merge pull request #8023 from ameerj/kirby-pop-in
maxwell_3d: Implement a safer CB data upload
2022-03-16 12:14:08 +01:00
Liam aea505f83d Vulkan: convert S8D24 <-> ABGR8 2022-03-15 20:05:21 -04:00
ameerj fc50392101 maxwell_3d: Implement a safer CB data upload
This makes constant buffer uploads safer and more accurate by updating the GPU memory as soon as the CB Data method is invoked. The previous implementation was deferring the updates until a different maxwell 3d method was detected, then writing all CB data at once.
2022-03-14 19:18:36 -04:00