Morph
d607ceacf4
gl_rasterizer: Remove unused includes
This removes unused includes, especially the core includes which were causing this file to be recompiled every time files included by those headers are modified.
5 years ago
lat9nq
61121d1b22
gl_device: Force GLASM on NVIDIA drivers 495-496
GLSL shaders currently do not render correctly on the recent NVIDIA
drivers. This adds a check that forces assembly shaders for these
drivers since they seem unaffected and adds a warning informing of the
decision.
Developers can disable the check by enabling graphics debugging.
5 years ago
Fernando Sahmkow
ad8afaf1ef
Vulran Rasterizer: address feedback.
5 years ago
Feng Chen
b769bea61b
Fix vulkan viewport issue
5 years ago
ameerj
ef811c6425
settings: Remove std::chrono usage
Alleviates the dependency on chrono for all files that include settings.h
5 years ago
ameerj
f346b04d12
vic: Use the minimum of surface/frame dimensions when writing the final frame to the GPU
Addresses possible buffer overflow behavior.
5 years ago
Feng Chen
ba8be75037
h264: Use max allowed max_num_ref_frames when using CPU decoding
5 years ago
Valeri
0394e4bb8e
vic: Allow surface to be higher than frame
Touhou Genso Wanderer Lotus Labyrinth R decodes 1920x1080 videos into 1920x1088 surface.
Only allow mismatch for height, since larger width would result in increasingly offset rows and somewhat defeat entire purpose of this check.
5 years ago
ameerj
403fc86c11
vic: Avoid memory corruption when multiple streams with different dimensions are decoded
This is a work around to avoid buffer overflow errors until multi channel/multi stream decoding is supported.
5 years ago
ameerj
5aae61775f
vic: Refactor frame writing methods
5 years ago
ameerj
899fdb9c44
vic: Implement RGBX frame format
5 years ago
Fernando Sahmkow
0498669b4b
Vulkan: Fix failing barrier on refresh.
5 years ago
FernandoS27
bb8bf740e9
RasterizerInterface: Correct size of CPU addresses to cache.
5 years ago
FernandoS27
7f4de3466a
Vulkan: Fix the master Semaphore
5 years ago
ameerj
6c0d902373
nvhost_ctrl: Refactor usage of gpu.LockSync()
This seems to only be used to protect a later gpu function call. So we can move the lock into that call instead.
5 years ago
ameerj
427bf76e62
gpu: Migrate implementation to the cpp file
5 years ago
ameerj
5daf3abe65
common/logging: Move Log::Entry declaration to a separate header
This reduces the load of requiring to include std::chrono in all files which include log.h
5 years ago
ameerj
6f35fb8d26
vk_graphics_pipeline: Force patch list topology when tessellation is used
Fixes a crash on some drivers when tessellation is used but the IA topology is not patch list.
5 years ago
ameerj
73666fb262
general: Update style to clang-format-12
5 years ago
ameerj
ab63a193d7
video_core: Fix jthread related hangs when stopping emulation
jthread on some compilers is more picky when it comes to the order in which objects are destroyed.
5 years ago
ameerj
1e1ecca691
vk_texture_cache: Disable cube compatibility flag on non-mesa AMD GCN4 and earlier
Fixes rainbow textures on BOTW.
5 years ago
Fernando Sahmkow
d702b393a4
Vulkan Query Cache: make sure to wait for the query result.
5 years ago
Fernando Sahmkow
8fdb51ab46
QueryCache: Flush queries in order of running.
5 years ago
Fernando Sahmkow
60a3980561
Vulkan Rasterizer: Correct DepthBias/PolygonOffset on Vulkan.
5 years ago
ameerj
24049591f6
maxwell_dma: Minor refactoring
5 years ago
ameerj
1ea8073783
buffer_cache: Minor fixes
Loop through the tmp_intervals by reference, rather than by copy, and fix gl clear buffer size calculation.
5 years ago
ameerj
22162f906b
host_shaders: Remove opengl_copy_bgra.comp
5 years ago
ameerj
ab808fe7cf
gl_texture_cache: Migrate BGRCopyPass from util_shaders
The BGR copies no longer use shaders.
5 years ago
ameerj
e3c153efa4
vulkan_device: Reorder Float16Int8 declaration
This variable was going out of scope before its usage in the vulkan device creation, causing a crash on very specific drivers.
5 years ago
ameerj
5601e1cb00
Revert "Merge pull request #7006 from FernandoS27/a-motherfucking-driver"
This reverts commit 62e88d0e74 , reversing
changes made to edf3da346f .
5 years ago
ameerj
7f737b022a
util_shaders: Unify BGRA copy passes
5 years ago
ameerj
84f7e7e91c
vk_scheduler: Use std::jthread
5 years ago
ameerj
877cd60b00
gpu: Use std::jthread for async gpu thread
5 years ago
Morph
2df2b3719a
renderers: Log total pipeline count
5 years ago
ameerj
db1c4b125f
vulkan_debug_callback: Ignore InvalidCommandBuffer-VkDescriptorSet errors
This validation error is spammed on some titles, asserting that VkDescriptorSet 0x0[] was destroyed.
This is likely a validation layer bug when using VK_KHR_push_descriptor, which can avoid using traditional VkDescriptorSet. It should be safe to ignore for now.
5 years ago
Fernando Sahmkow
7a712da2b3
Vulkan: Disable VK_EXT_SAMPLER_FILTER_MINMAX in GCN AMD since it's broken.
5 years ago
Fernando Sahmkow
e7c8a0bb23
Vulkan: Blacklist Int8Float16 Extension on AMD on driver 21.9.1
5 years ago
Fernando Sahmkow
e7ca37b1e5
Vulkan/Descriptors: Increase sets per pool on AMFD propietary driver.
5 years ago
ameerj
35e5a67a83
vk_swapchain: Use immediate present mode when mailbox is unavailable and FPS is unlocked
Allows drivers that do not support VK_PRESENT_MODE_MAILBOX_KHR the ability to present at a framerate higher than the monitor's refresh rate when the FPS is unlocked.
5 years ago
ameerj
678f73069f
vk_rasterizer: Fix dynamic StencilOp updating when two faces are enabled
This function was incorrectly using the stencil_two_side_enable register when dynamically updating the StencilOp.
5 years ago
ameerj
8e289ade15
vk_state_tracker: Remove unused function
5 years ago
Morph
e67463df24
shader_environment: Add missing <algorithm> include
5 years ago
Morph
63b4c8f9f7
vk_descriptor_pool: Add missing <algorithm> include
5 years ago
Morph
76abf55f25
slot_vector: Add missing <algorithm> include
5 years ago
Morph
554c46d186
video_core/memory_manager: Add missing <algorithm> include
5 years ago
Morph
ae028ddf22
codec: Add missing <string_view> include
5 years ago
Feng Chen
0292374807
Fix blend equation enum error
5 years ago
ameerj
7d854fbdb0
renderer_vulkan: Wait on present semaphore at queue submit
The present semaphore is being signalled by the call to acquire the
swapchain image. This semaphore is meant to be waited on when rendering
to the swapchain image. Currently it is waited on when presenting, but
moving its usage to be waited on in the command buffer submission allows
for proper usage of this semaphore.
Fixes the device lost when launching titles on the Intel Linux Mesa driver.
5 years ago
ameerj
4fda7f1c82
structured_control_flow: Conditionally invoke demote reorder pass
This is only needed on select drivers when a fragment shader discards/demotes.
5 years ago
Fernando Sahmkow
fe0acec539
Garbage Collection: Make it more agressive on high priority mode.
5 years ago