| Age | Commit message (Collapse) | Author |
|
Uses mailbox, then immediate for unlocked framerate depending on
support for either. Also adds support for FIFO_RELAXED.
This function now assumes vsync_mode was originially configured to a value
that the driver supports.
vk_swapchain: ChooseSwapPresentMode determines updates
Simplifies swapchain a bit and allows us to change the present mode
during guest runtime.
vk_swapchain: Fix MSVC error
vk_swapchain: Enforce available present modes
Some frontends don't check the value of vsync_mode before comitting it.
Just as well, since a driver update or misconfiguration could problems
in the swap chain.
vk_swapchain: Silence warnings
Silences GCC warnings implicit-fallthrough and shadow, which apparently
are not enabled on clang.
|
|
We don't need the whole EmuWindow when creating a surface,
and it creates onerous requirements outside of typical usage for
creating a surface elsewhere.
|
|
Previously, yuzu would try and guess which vsync mode to use given
different scenarios, but apparently we didn't always get it right. This
exposes the separate modes in a drop-down the user can select.
If a mode isn't available in Vulkan, it defaults to FIFO.
|
|
|
|
* Depends on the layout dimentions and thus should be recreated as well
|
|
* During pipeline configure the function would acquire some payload space from the descriptor update queue,
write the descriptor data on the GPU thread and give the scheduler a pointer to the beginning of said space to update it later.
TickFrame resets the payload cursor, used to track acquires, back to the beginning of the buffer.
This wasn't a problem before since WaitWorker was called at the end of the frame but now it is.
If a frame writes to a cursor before the scheduler catches up, it will crash
* To fix this the payload buffer has been increased to account for the in flight frames that are allowed to exist now.
TickFrame will switch between the payload spaces instead of resetting
|
|
|
|
Y.F.C Buffer Cache Revamp
|
|
vk_pipeline_cache: Skip compute pipelines on Intel proprietary drivers
|
|
|
|
|
|
|
|
to host.
WIP
|
|
|
|
Intel's SPIR-V shader compiler is broken. For now, skip compiling any compute pipelines until they fix this issue.
This is not a perfect workaround, as there are a small subset of non-compute pipelines that still cause it to crash, but this should cover the majority of crashes.
It is unfortunate that even with a test case reported 6 months ago the issue has not been fixed in favor of fixing "the most popular games and apps".
Intel, you can do better than this.
|
|
vulkan: pick alpha composite flags based on available values
|
|
|
|
|
|
|
|
|
|
On AMD a subpixel offset of 1/512 of the texel size is applied to the texture coordinates at a ImageGather call to ensure the rounding at the texel centers is done the same way as in Maxwell or other Nvidia architectures.
See https://www.reedbeta.com/blog/texture-gathers-and-coordinate-precision/ for more details why this might be necessary.
This should fix shadow artifacts at object edges in Zelda: Breath of the Wild (#9957, #6956).
|
|
|
|
|
|
vk_scheduler: split work queue waits and execution waits
|
|
video_core: Update texture format
|
|
|
|
|
|
AccelerateDMA: Refactor Buffer/Image copy code and implement for OGL
|
|
|
|
Check all swizzle components for red, not just [0]
|
|
|
|
|
|
|
|
rather than int
|
|
|
|
Revert "shader_recompiler: Align SSBO offsets to meet host requirements"
|
|
constexpr static to static constexpr for consistency
Signed-off-by: arades79 <scravers@protonmail.com>
|
|
where possible
Signed-off-by: arades79 <scravers@protonmail.com>
|
|
texture_cache: OpenGL: Implement MSAA uploads and copies
|
|
|
|
|
|
|
|
|
|
video_core: Implement maxwell3d draw texture method
|
|
|
|
renderer_vulkan: pause turbo submissions on inactive queue
|
|
|
|
|
|
This reverts commit 9e2997c4b6456031622602002924617690e32a13.
|
|
|