ameerj
720ff38097
gl_compute_pipeline: Force context flush when loading shader cache
2023-01-29 21:32:12 -05:00
ameerj
01eeda74a6
gl_graphics_pipeline: Force context flush when loading shader cache
2023-01-29 20:26:49 -05:00
Levi Behunin
d5fc56db4b
Move to Clang Format 15
...
Depends on https://github.com/yuzu-emu/build-environments/pull/69
clang-15 primary run
2023-01-29 17:49:42 -07:00
bunnei
a3aedcce65
Merge pull request #9691 from ameerj/msaa-texcache
...
texture_cache: Fix tracking of MSAA image views
2023-01-28 23:47:45 -08:00
ameerj
c2fb7b64ce
texture_cache: Adjust image view sizes by MSAA samples
2023-01-28 00:15:29 -05:00
818631a412
video_core: Implement vulkan clear specified channel
2023-01-28 12:53:05 +08:00
liamwhite
6fa86989f1
Merge pull request #9539 from Wollnashorn/opengl-fsr
...
video_core/opengl: Added FSR upscaling filter to the OpenGL renderer
2023-01-27 19:28:35 -05:00
Wollnashorn
c4a49eb1dd
video_core/opengl: Add FSR upscaling filter to the OpenGL renderer
2023-01-26 21:43:33 +01:00
Merry
dc7ab4c5d6
Revert "MemoryManager: use fastmem directly."
...
This reverts commit af5ecb0b15
.
2023-01-25 10:12:04 +00:00
Liam
c6eab71d5c
nsight_aftermath_tracker: update for latest Aftermath SDK
2023-01-21 13:01:19 -05:00
liamwhite
475370c8f8
Merge pull request #9556 from vonchenplus/draw_texture
...
video_core: Implement maxwell3d draw texture method
2023-01-19 14:58:53 -05:00
Kelebek1
5a106cf11e
Demote maxwell3d Firmware4 call log to debug
2023-01-18 01:59:11 +00:00
9fc7ca1731
Address feedback
2023-01-16 10:27:57 +08:00
Morph
c277dad25f
Merge pull request #9596 from liamwhite/mvk
...
MoltenVK: restrict number of vertex attributes/bindings to 16
2023-01-10 18:11:44 -05:00
Liam
fa8581e900
vulkan_common: fix indirect draw with count
2023-01-10 09:43:36 -05:00
TellowKrinkle
eaf425bd32
MoltenVK: restrict number of vertex attributes/bindings to 16
2023-01-09 19:01:09 -05:00
Morph
ffb12f4f9f
Merge pull request #9581 from liamwhite/turbo2
...
renderer_vulkan: pause turbo submissions on inactive queue
2023-01-09 16:23:16 -05:00
Liam
279005448a
vulkan_device: refactor feature testing
2023-01-09 16:12:16 -05:00
Fernando Sahmkow
efbb6fe288
VideoCore: Fix OGL cache invalidation.
2023-01-07 21:56:17 -05:00
Liam
57a4388e2d
Revert "Vulkan, OpenGL: Hook up storage buffer alignment code"
...
This reverts commit 9e2997c4b6
.
2023-01-07 15:48:50 -05:00
Liam
c19c8ac92c
renderer_vulkan: pause turbo submissions on inactive queue
2023-01-07 14:35:11 -05:00
Narr the Reg
432d48d9c8
Merge pull request #9570 from liamwhite/less-clock-boost
...
renderer_vulkan: disable clock boost on unvalidated devices
2023-01-07 10:41:37 -06:00
Liam
444b25bae1
vulkan_device: avoid attempt to access empty optional
2023-01-06 21:23:21 -05:00
Liam
2e4dde12c7
renderer_vulkan: disable clock boost on unvalidated devices
2023-01-06 19:07:47 -05:00
Narr the Reg
4bda2b475f
opengl: Sanitize antialiasing config
2023-01-06 13:42:20 -06:00
Wollnashorn
457826a83b
video_core/vulkan: Fixed loading of Vulkan driver pipeline cache
...
The header size of the Vulkan driver pipeline cache files was incorrectly in PipelineCache::LoadVulkanPipelineCache, for which the pipeline cache wasn't read correctly and got invalidated on each load.
2023-01-06 16:52:41 +01:00
Fernando S
8b251fc3f6
Merge pull request #9535 from bylaws/master
...
Port over several shader-compiler fixes from skyline
2023-01-06 10:06:45 -05:00
liamwhite
020dbcdbc7
Merge pull request #9552 from liamwhite/turbo
...
vulkan: implement 'turbo mode' clock booster
2023-01-06 09:59:59 -05:00
Fernando S
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
Fernando Sahmkow
f6245dc40a
MacroHLE: eliminate 2 rushed macros.
2023-01-05 20:53:31 -05:00
liamwhite
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
liamwhite
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
Billy Laws
58fec43768
Run clang-format
2023-01-05 22:18:10 +00:00
Billy Laws
6c812a0c84
Vulkan, OpenGL: Hook up geometry shader passthrough emulation
2023-01-05 22:13:07 +00:00
Billy Laws
9e2997c4b6
Vulkan, OpenGL: Hook up storage buffer alignment code
2023-01-05 22:13:07 +00:00
Billy Laws
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
Wollnashorn
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
Wollnashorn
f2aa816679
video_core/vulkan: Added check if Vulkan pipeline path has been set
2023-01-05 21:03:01 +01:00
Wollnashorn
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
Fernando Sahmkow
b56ad93bbc
BufferBase: Don't ignore GPU pages.
2023-01-05 14:00:10 -05:00
Fernando Sahmkow
2d0c4f2b1d
Fermi2D: sync cache flushes
2023-01-05 06:43:28 -05:00
Fernando Sahmkow
af5ecb0b15
MemoryManager: use fastmem directly.
2023-01-05 06:06:33 -05:00
Fernando Sahmkow
6c7eb81f7d
video_core: Cache GPU internal writes.
2023-01-05 05:23:39 -05:00
Fernando Sahmkow
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
Liam
a4269c285a
common: add setting for renderer clock workaround
2023-01-04 22:22:01 -05:00
Liam
301e9bbc03
vulkan: implement 'turbo mode' clock booster
2023-01-04 22:22:01 -05:00
Liam
66ae79de13
renderer_vulkan: implement fallback path for null descriptors
2023-01-04 22:14:01 -05:00
Fernando Sahmkow
3ecc03ec1b
yuzu-ui: Add setting for disabling macro HLE
2023-01-04 14:56:52 -05:00
Fernando Sahmkow
a0c697124c
Video_core: Address feedback
2023-01-04 14:39:42 -05:00
Fernando Sahmkow
03ccd8bf43
Texture Cache: Implement async texture downloads.
2023-01-03 22:52:15 -05:00
Fernando Sahmkow
ddbf851ef6
Vulkan: Update blacklisting to latest driver versions.
2023-01-03 21:16:43 -05:00
Fernando Sahmkow
a045e860dd
ShaderCompiler: Inline driver specific constants.
2023-01-03 16:29:25 -05:00
Fernando Sahmkow
b62ffb612d
Vulkan: rework stencil tracking.
2023-01-03 16:29:16 -05:00
Liam
f9c6d39a6c
vulkan_common: blacklist radv from extended_dynamic_state2 on drivers before 22.3.1
2023-01-01 16:43:58 -05:00
Liam
4814d87385
video_core: fix build
2023-01-01 16:43:58 -05:00
Fernando Sahmkow
d09aa0182f
MacroHLE: Final cleanup and fixes.
2023-01-01 16:43:58 -05:00
Fernando Sahmkow
581a7d785b
Rasterizer: Setup skeleton for Host Conditional rendering
2023-01-01 16:43:58 -05:00
Fernando Sahmkow
3630bfaef3
RasterizerMemory: Add filtering for flushing/invalidation operations.
2023-01-01 16:43:58 -05:00
Fernando Sahmkow
2793304117
Vulkan: Allow stagging buffer deferrals.
2023-01-01 16:43:58 -05:00
Fernando Sahmkow
8d694701bc
MacroHLE: Add OpenGL Support
2023-01-01 16:43:58 -05:00
Fernando Sahmkow
4c82e47edd
Vulkan: Add other additional pipeline specs
2023-01-01 16:43:58 -05:00
Fernando Sahmkow
d33251db93
Vulkan: Implement Dynamic State 3
2023-01-01 16:43:58 -05:00
Fernando Sahmkow
f800e485c9
Vulkan Implement Dynamic State 2 LogicOp and PatchVertices
2023-01-01 16:43:58 -05:00
Fernando Sahmkow
c897c55e3c
Vulkan: Implement Dynamic States 2
2023-01-01 16:43:57 -05:00
Fernando Sahmkow
cb1497d0d7
DMAPusher: Improve collection of non executing methods
2023-01-01 16:43:57 -05:00
Fernando Sahmkow
ce448ce770
Revert Buffer cache changes and setup additional macros.
2023-01-01 16:43:57 -05:00
Fernando Sahmkow
18637766ef
MacroHLE: Reduce massive calculations on sizing estimation.
2023-01-01 16:43:57 -05:00
Fernando Sahmkow
aad0cbf024
MacroHLE: Add HLE replacement for base vertex and base instance.
2023-01-01 16:43:57 -05:00
Fernando Sahmkow
93ac5a6a6d
MacroHLE: Add Index Buffer size estimation.
2023-01-01 16:43:57 -05:00
Fernando Sahmkow
c541559767
MacroHLE: Refactor MacroHLE system.
2023-01-01 16:43:57 -05:00
Fernando Sahmkow
0f89828073
MacroHLE: Implement DrawIndexedIndirect & DrawArraysIndirect.
2023-01-01 16:43:57 -05:00
Fernando Sahmkow
a5a94f52ff
MacroHLE: Add MultidrawIndirect HLE Macro.
2023-01-01 16:43:57 -05:00
Liam
aa13ee5c4a
vulkan_common: unify VK_EXT_debug_utils and selection of validation layer
2023-01-01 11:59:47 -05:00
liamwhite
9fdacb5e3a
Merge pull request #9423 from vonchenplus/vulkan_quad_strip
...
video_core: Implement all vulkan topology
2022-12-28 20:59:23 -05:00
6a397bc8ed
video_core: Implement other missing vulkan topology
2022-12-26 12:20:49 +08:00
86d5b4e556
video_core: Implement vulkan QuadStrip topology
2022-12-26 11:37:34 +08:00
ameerj
7584d36922
texture_cache: Use Common::ScratchBuffer for swizzle buffers
2022-12-25 15:47:41 -05:00
ameerj
1209d428f1
texture_cache: Use pre-allocated buffer for texture downloads
2022-12-25 15:38:36 -05:00
ameerj
c448b3af2f
texture_cache: Use pre-allocated buffer for texture uploads
2022-12-25 15:38:36 -05:00
Fernando S
3e6850f00b
Merge pull request #9453 from ameerj/scratch-vector
...
common: Add ScratchBuffer Class
2022-12-24 20:26:06 -05:00
ameerj
c6590ad07b
scratch_buffer: Explicitly defing resize and resize_destructive functions
...
resize keeps previous data intact when the buffer grows
resize_destructive destroys the previous data when the buffer grows
2022-12-19 22:40:50 -05:00
ameerj
61e4f2d931
dma_pusher: Rework command_headers usage
...
Uses ScratchBuffer and avoids overwriting the command_headers buffer with the prefetch_command_list
2022-12-19 18:08:04 -05:00
ameerj
bdef22ff85
buffer_cache: Use Common::ScratchBuffer for ImmediateBuffer usage
2022-12-19 18:08:04 -05:00
ameerj
4bc2d82130
video_core: Add usages of ScratchBuffer
2022-12-19 18:08:04 -05:00
Jan Beich
b60a93a936
externals: update Vulkan-Headers to v1.3.238
2022-12-19 17:14:29 +00:00
liamwhite
5da72a891f
Merge pull request #7450 from FernandoS27/ndc-vulkan
...
Vulkan: Add support for VK_EXT_depth_clip_control.
2022-12-17 16:08:10 -05:00
Kelebek1
f7d95d0a3a
Remove unimplemented transform feedback geometry spam, it should be implemented
2022-12-16 22:52:29 +00:00
Narr the Reg
9ff891ce71
Merge pull request #9431 from liamwhite/sixty-five-oh-two
...
vulkan_common: declare storageBuffer8BitAccess
2022-12-15 17:52:16 -06:00
liamwhite
3ff7a5de1a
Merge pull request #7410 from Nefsen402/wayland-fixes
...
Wayland fixes
2022-12-15 12:05:01 -05:00
FernandoS27
0104e28fe4
Vulkan: Add support for VK_EXT_depth_clip_control.
2022-12-13 21:39:18 -05:00
Liam
4fce72c902
vulkan_common: declare storageBuffer8BitAccess
2022-12-13 18:28:50 -05:00
Alexander Orzechowski
09e3029c11
gl_device: Use a more robust way to use strict context mode
...
Instead of checking a environment variable which may not actually
exist or is just wrong, ask QT if it's running on the wayland
platform.
2022-12-13 15:01:51 -05:00
Alexander Orzechowski
3cc3176ad6
video_core/vulkan: Explicity check swapchain size when deciding to recreate
...
Vulkan for whatever reason does not return VK_ERROR_OUT_OF_DATE_KHR when
the swapchain is the wrong size. Explicity make sure the size is indeed
up to date to workaround this.
2022-12-13 13:23:35 -05:00
Liam
d5f53da79d
renderer_opengl: refactor context acquire
2022-12-13 13:23:23 -05:00
yzct12345
f6868ae4dd
Fix validation errors on less compatible Intel GPU
2022-12-12 20:53:05 -05:00
bunnei
da58eb6208
Merge pull request #9406 from vonchenplus/topology
...
video_core: Adjust topology update logic and Adjust Clear Manage
2022-12-12 14:37:06 -08:00
Mai
8ef9075b1b
Merge pull request #9420 from liamwhite/aniso
...
video_core: fix off by one in anisotropic filtering amount
2022-12-12 03:34:09 +00:00
Matías Locatti
623429a27e
Merge pull request #9409 from liamwhite/smaa2
...
video_core: Integrate SMAA
2022-12-11 01:38:28 -03:00