8b251fc3f6
Merge pull request #9535 from bylaws/master
...
Port over several shader-compiler fixes from skyline
2023-01-06 10:06:45 -05:00
020dbcdbc7
Merge pull request #9552 from liamwhite/turbo
...
vulkan: implement 'turbo mode' clock booster
2023-01-06 09:59:59 -05:00
5bcbb8de45
Merge pull request #9559 from FernandoS27/cached-writes
...
VideoCore: Implement Cached Writes, use fastmem for reading GPU memory and eliminate old stuffs
2023-01-06 07:31:39 -05:00
f6245dc40a
MacroHLE: eliminate 2 rushed macros.
2023-01-05 20:53:31 -05:00
eaca61e073
Merge pull request #9528 from liamwhite/mvk-nulldesc
...
renderer_vulkan: implement fallback path for null buffer descriptors
2023-01-05 18:31:55 -05:00
3e33a878dc
Merge pull request #9536 from liamwhite/debug-utils
...
vulkan_common: unify VK_EXT_debug_utils and selection of validation layer
2023-01-05 18:31:45 -05:00
58fec43768
Run clang-format
2023-01-05 22:18:10 +00:00
6c812a0c84
Vulkan, OpenGL: Hook up geometry shader passthrough emulation
2023-01-05 22:13:07 +00:00
9e2997c4b6
Vulkan, OpenGL: Hook up storage buffer alignment code
2023-01-05 22:13:07 +00:00
bbfad79c89
Vulkan: Add a workaround for input_position on Adreno drivers
...
Adreno drivers will crash compiling geometry shaders if the input position is not wrapped in a gl_in struct.
2023-01-05 22:13:07 +00:00
e07976a22b
video_core/vulkan: Vulkan driver pipelines now contain cache version
...
So that old cache can get deleted when the cache version changes and does not grow infinitely
2023-01-05 21:03:01 +01:00
f2aa816679
video_core/vulkan: Added check if Vulkan pipeline path has been set
2023-01-05 21:03:01 +01:00
16809c1fa7
video_core/vulkan: Added VkPipelineCache
to store Vulkan pipelines
...
As an optional feature which can be enabled in the advanced graphics configuration, all pipelines that get built at the initial shader loading are stored in a VkPipelineCache object and are dumped to the disk.
These vendor specific pipeline cache files are located at `/shader/GAME_ID/vulkan_pipelines.bin`. This feature was mainly added because of an issue with the AMD driver (see yuzu-emu#8507) causing invalidation of the cache files the driver builds automatically.
2023-01-05 21:02:44 +01:00
b56ad93bbc
BufferBase: Don't ignore GPU pages.
2023-01-05 14:00:10 -05:00
2d0c4f2b1d
Fermi2D: sync cache flushes
2023-01-05 06:43:28 -05:00
af5ecb0b15
MemoryManager: use fastmem directly.
2023-01-05 06:06:33 -05:00
6c7eb81f7d
video_core: Cache GPU internal writes.
2023-01-05 05:23:39 -05:00
4d9af4a9d2
Vulkan: Fix drivers that don't support dynamic_state_2 up
2023-01-05 00:11:16 -05:00
013b689153
video_core: Implement opengl/vulkan draw_texture
2023-01-05 12:41:33 +08:00
1e8cee2ddf
video_core: Implement maxwell3d draw texture method
2023-01-05 12:41:28 +08:00
a4269c285a
common: add setting for renderer clock workaround
2023-01-04 22:22:01 -05:00
301e9bbc03
vulkan: implement 'turbo mode' clock booster
2023-01-04 22:22:01 -05:00
66ae79de13
renderer_vulkan: implement fallback path for null descriptors
2023-01-04 22:14:01 -05:00
3ecc03ec1b
yuzu-ui: Add setting for disabling macro HLE
2023-01-04 14:56:52 -05:00
a0c697124c
Video_core: Address feedback
2023-01-04 14:39:42 -05:00
03ccd8bf43
Texture Cache: Implement async texture downloads.
2023-01-03 22:52:15 -05:00
ddbf851ef6
Vulkan: Update blacklisting to latest driver versions.
2023-01-03 21:16:43 -05:00
a045e860dd
ShaderCompiler: Inline driver specific constants.
2023-01-03 16:29:25 -05:00
b62ffb612d
Vulkan: rework stencil tracking.
2023-01-03 16:29:16 -05:00
f9c6d39a6c
vulkan_common: blacklist radv from extended_dynamic_state2 on drivers before 22.3.1
2023-01-01 16:43:58 -05:00
4814d87385
video_core: fix build
2023-01-01 16:43:58 -05:00
d09aa0182f
MacroHLE: Final cleanup and fixes.
2023-01-01 16:43:58 -05:00
581a7d785b
Rasterizer: Setup skeleton for Host Conditional rendering
2023-01-01 16:43:58 -05:00
3630bfaef3
RasterizerMemory: Add filtering for flushing/invalidation operations.
2023-01-01 16:43:58 -05:00
2793304117
Vulkan: Allow stagging buffer deferrals.
2023-01-01 16:43:58 -05:00
8d694701bc
MacroHLE: Add OpenGL Support
2023-01-01 16:43:58 -05:00
4c82e47edd
Vulkan: Add other additional pipeline specs
2023-01-01 16:43:58 -05:00
d33251db93
Vulkan: Implement Dynamic State 3
2023-01-01 16:43:58 -05:00
f800e485c9
Vulkan Implement Dynamic State 2 LogicOp and PatchVertices
2023-01-01 16:43:58 -05:00
c897c55e3c
Vulkan: Implement Dynamic States 2
2023-01-01 16:43:57 -05:00
cb1497d0d7
DMAPusher: Improve collection of non executing methods
2023-01-01 16:43:57 -05:00
ce448ce770
Revert Buffer cache changes and setup additional macros.
2023-01-01 16:43:57 -05:00
18637766ef
MacroHLE: Reduce massive calculations on sizing estimation.
2023-01-01 16:43:57 -05:00
aad0cbf024
MacroHLE: Add HLE replacement for base vertex and base instance.
2023-01-01 16:43:57 -05:00
93ac5a6a6d
MacroHLE: Add Index Buffer size estimation.
2023-01-01 16:43:57 -05:00
c541559767
MacroHLE: Refactor MacroHLE system.
2023-01-01 16:43:57 -05:00
0f89828073
MacroHLE: Implement DrawIndexedIndirect & DrawArraysIndirect.
2023-01-01 16:43:57 -05:00
a5a94f52ff
MacroHLE: Add MultidrawIndirect HLE Macro.
2023-01-01 16:43:57 -05:00
aa13ee5c4a
vulkan_common: unify VK_EXT_debug_utils and selection of validation layer
2023-01-01 11:59:47 -05:00
9fdacb5e3a
Merge pull request #9423 from vonchenplus/vulkan_quad_strip
...
video_core: Implement all vulkan topology
2022-12-28 20:59:23 -05:00