Commit Graph

6954 Commits

Author SHA1 Message Date
liamwhite ad049f13aa
Merge pull request #12415 from ameerj/ogl-draw-auto
gl_rasterizer: Implement DrawTransformFeedback macro
2023-12-26 11:45:25 -05:00
GPUCode 20e0407235 video_core: Fix buffer_row_length computation for linear compressed textures 2023-12-26 16:33:03 +02:00
Liam 6a1ddc5028 renderer_vulkan: skip SetObjectNameEXT on unsupported driver 2023-12-23 11:08:02 -05:00
Liam b1d4804c07 renderer_vulkan: demote format assert to error log 2023-12-23 11:04:02 -05:00
liamwhite 91290b9be4
Merge pull request #12412 from ameerj/gl-query-prims
OpenGL: Add GL_PRIMITIVES_GENERATED and GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN queries
2023-12-22 11:42:05 -05:00
Fernando S 373a1ff2ce
Merge pull request #12410 from liamwhite/more-mali-null
renderer_vulkan: don't pass null view when nullDescriptor is not supported
2023-12-22 17:40:47 +01:00
Liam 9e9aed41be shader_recompiler: use float image operations on load/store when required 2023-12-21 14:34:46 -05:00
Ameer J b4b301d22e gl_device: Remove AMD blacklists that are no longer applicable 2023-12-20 18:19:15 -05:00
liamwhite bedc758fe7
Merge pull request #12414 from jbeich/vk274
externals: update Vulkan-Headers to v1.3.274
2023-12-20 12:46:50 -05:00
liamwhite 76701185ad
Merge pull request #12400 from ameerj/vk-query-prefix-fix
vk_query_cache: Fix prefix sum max_accumulation_limit logic
2023-12-20 12:46:41 -05:00
Fernando S 9e5b4052ed
Merge pull request #12403 from liamwhite/clipdistance
shader_recompiler: use minimal clip distance array
2023-12-20 18:45:20 +01:00
Fernando S 234867b84d
Merge pull request #12390 from liamwhite/binding-insanity
renderer_vulkan: work around turnip binding bug in a610
2023-12-20 18:44:47 +01:00
Ameer J 61e8c5f798 gl_rasterizer: Less spammy log for unimplemented resets 2023-12-20 11:51:44 -05:00
Ameer J bbc0ed118d gl_rasterizer: Implement DrawTransformFeedback macro 2023-12-19 19:54:57 -05:00
Jan Beich 310834aea2 vulkan_common: unbreak build with Vulkan-Headers 1.3.274
src/video_core/vulkan_common/vulkan_wrapper.cpp:293:13: error: enumeration value 'VK_ERROR_INVALID_VIDEO_STD_PARAMETERS_KHR' not handled in switch [-Werror,-Wswitch]
    switch (result) {
            ^~~~~~
2023-12-20 01:12:41 +01:00
Ameer J db8a601cf8 OpenGL: Add GL_PRIMITIVES_GENERATED and GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN queries 2023-12-19 17:32:31 -05:00
Ameer J 1bb76201e6 gl_rasterizer: Silence spammy logs 2023-12-19 17:13:23 -05:00
Ameer J 372bca5945 gl_buffer_cache: Reintroduce NV_vertex_buffer_unified_memory
Workaround Nvidia drivers complaining when a buffer is bound as both a vertex buffer and transform feedback buffer
2023-12-19 17:13:23 -05:00
Liam d0a75580da renderer_vulkan: don't pass null view when nullDescriptor is not supported 2023-12-19 15:13:10 -05:00
Fernando S efe52db690
Merge pull request #12382 from liamwhite/image-limit
renderer_vulkan: allow up to 7 swapchain images
2023-12-19 16:15:40 +01:00
Liam 94244437de shader_recompiler: ignore clip distances beyond driver support level 2023-12-18 22:25:14 -05:00
Ameer J a2b567dfd6 vk_query_cache: Fix prefix sum max_accumulation_limit logic 2023-12-18 12:37:55 -05:00
liamwhite 65e646eeba
Revert "video_core: use interval map for page count tracking" 2023-12-17 18:59:49 -05:00
Liam fba3fa705d renderer_vulkan: work around turnip binding bug in a610 2023-12-17 15:45:09 -05:00
Liam 7fc06260d1 renderer_vulkan: allow up to 7 swapchain images 2023-12-16 18:59:44 -05:00
liamwhite 225f4f40cb
Merge pull request #12377 from ameerj/tfb-batch-oopsie
gl_buffer_cache: Fix tfb binding typo
2023-12-16 13:58:06 -05:00
liamwhite 927be75616
Merge pull request #12345 from liamwhite/a-flock-of-seagulls
renderer_vulkan: cap async presentation frame count
2023-12-16 13:58:00 -05:00
Ameer J 2b0cf73bf0 gl_buffer_cache: Fix tfb binding typo 2023-12-16 12:48:21 -05:00
Liam 2a3f84aaf2 video_core: lock interval map update 2023-12-14 22:10:21 -05:00
Liam 030e6b3980 video_core: use interval map for page count tracking 2023-12-14 21:54:36 -05:00
Liam b560ade663 renderer_vulkan: bound async presentation queue growth 2023-12-14 15:54:56 -05:00
liamwhite 52e6b8a2d3
Merge pull request #12274 from liamwhite/srgb-nonsense
renderer_vulkan: do not recreate swapchain for srgb
2023-12-08 12:26:13 -05:00
lat9nq 4cd3f9f4f9 codec: Update to use av frame flags
Resolves Clang -Wdeprecated-declarations warning from interlaced_frame
2023-12-05 21:10:38 -05:00
liamwhite 90e87c40e8
Merge pull request #12235 from liamwhite/flip-clip
renderer_vulkan: adjust window origin and swizzle independently
2023-12-03 21:59:11 -05:00
Liam 6b7dc587cf texture_cache: fix max_element comparison function 2023-12-03 18:40:19 -05:00
Liam f05cb69d4f renderer_opengl: remove srgb conversion logic 2023-12-03 17:08:25 -05:00
Liam 382cf087a0 renderer_vulkan: do not recreate swapchain for srgb 2023-12-03 16:43:54 -05:00
liamwhite 5fb1a83e4c
Merge pull request #12094 from ameerj/gl-buffer-cache-batch-vtx
gl_buffer_cache: Batch vertex/tfb buffer binding
2023-12-03 16:27:22 -05:00
liamwhite 69529a748c
Merge pull request #12261 from liamwhite/fruit-company
texture_cache: use pedantic type names
2023-12-02 09:28:43 -05:00
Liam 345ea568ba texture_cache: use pedantic type names 2023-12-01 22:46:33 -05:00
GPUCode d74dd4faf9 vk_blit_screen: Use correct format for fxaa renderpass 2023-12-01 22:55:50 +02:00
liamwhite 1c21d6c2c2
Merge pull request #12056 from ameerj/opengl-neglect
OpenGL: Implement async downloads in buffer and texture caches
2023-12-01 09:16:56 -05:00
Liam e7dd968ac4 renderer_vulkan: adjust window origin and swizzle independently 2023-11-30 12:33:26 -05:00
Liam 8f62e8e63f renderer_vulkan: exclude more qcom drivers from extensions 2023-11-29 21:06:06 -05:00
liamwhite 91ad6b7098
Merge pull request #12194 from liamwhite/fruit-company
video_core: fix mac compile
2023-11-29 12:33:41 -05:00
liamwhite df49795bcb
Merge pull request #12154 from liamwhite/more-drivers
vulkan_device: add names for more driverID enumeration values
2023-11-29 12:33:34 -05:00
Ameer J 1d11fe00a3
Merge branch 'master' into ssbo-align 2023-11-26 21:08:53 -05:00
Liam 7c1cb5e8c9 video_core: fix mac compile 2023-11-26 20:04:06 -05:00
Fernando S f21340f7aa
Merge pull request #11535 from GPUCode/upload_cmdbuf
renderer_vulkan: Introduce separate cmd buffer for uploads
2023-11-26 18:33:05 +01:00
liamwhite 090ea0281c
Merge pull request #12153 from liamwhite/deck2
renderer_vulkan: exclude steam deck oled from force max clock setting
2023-11-25 10:17:18 -05:00
liamwhite 2993d3bb49
Merge pull request #12110 from liamwhite/mali-nullview
vk_texture_cache: add workaround for nullDescriptor on Mali
2023-11-25 10:17:00 -05:00
Liam dee792937f vulkan_device: add names for more driverID enumeration values 2023-11-24 12:00:41 -05:00
Liam 4a278b69b1 renderer_vulkan: exclude steam deck oled from force max clock setting 2023-11-24 11:38:39 -05:00
Liam 453fd47030 query_cache: demote report synced unreachable to assert 2023-11-23 09:33:02 -05:00
liamwhite e69118042f
Merge pull request #12045 from liamwhite/codec-refactor
video_core: refactor video frame and packet parsing
2023-11-21 09:19:26 -05:00
Liam e7878e3cf8 vk_texture_cache: add workaround for nullDescriptor on Mali 2023-11-20 20:09:12 -05:00
Ameer J a595ed499d gl_buffer_cache: Batch vertex/tfb buffer binding 2023-11-19 17:17:16 -05:00
Liam 473caaff5b renderer_vulkan: ignore viewport stores on non-supporting drivers 2023-11-19 11:27:12 -05:00
liamwhite 787552f832
Merge pull request #12081 from FernandoS27/check-out-on-your-broke-crypto-friends
Vulkan: Be more generous with pipeline workers for Android
2023-11-19 11:16:19 -05:00
liamwhite 5f945e2fcd
Merge pull request #12036 from FernandoS27/you-should-have-more-than-one-towel
Query Cache: Disable write syncing on Android
2023-11-19 09:52:22 -05:00
liamwhite 61fed8a3a6
Merge pull request #12068 from ameerj/glasm-xfb-fixes
gl_graphics_pipeline: GLASM: Fix transform feedback attribs buffer mode
2023-11-19 09:49:38 -05:00
Fernando Sahmkow a493ba76b4 Vulkan: Be more generous with pipeline workers for Android 2023-11-19 14:54:15 +01:00
Fernando Sahmkow ae60a5657e Buffer Cache: Eliminate clears on Indirect buffers 2023-11-18 19:26:14 +01:00
Ameer J feb60de5c3
shader_recompiler: Fix spelling of "derivate" (#12067) 2023-11-18 13:39:47 +01:00
Ameer J c67644f1da gl_graphics_pipeline: GLASM: Fix transform feedback attribs buffer mode
GL_SEPARATE_ATTRIBS only applies when multiple buffers are being used, else GL_INTERLEAVED_ATTRIBS handles the cases for a single buffer with potentially more than one attribute
2023-11-18 00:44:05 -05:00
Liam 4055a476aa video_core: refactor video frame and packet parsing 2023-11-16 17:01:38 -05:00
Fernando Sahmkow c9437e5244 Query Cache: Disable write syncing on Android 2023-11-15 02:23:39 +01:00
Fernando Sahmkow 50bcfa5fb9 Vulkan: Add a final barrier to the upload command buffer 2023-11-12 20:58:30 +01:00
GPUCode efc50485b8 renderer_vulkan: Introduce separate cmd buffer for uploads 2023-11-12 20:27:39 +01:00
Fernando Sahmkow f1806d237f Memory: Fix invalidation handling from the CPU/Services 2023-11-12 14:10:40 +01:00
Fernando Sahmkow 1d03a0fa75 Revert "renderer_vulkan: add locks to avoid scheduler flushes from CPU"
This reverts commit d9dde7e6f3.
2023-11-10 15:40:48 +01:00
liamwhite 40357098a2
Merge pull request #11896 from liamwhite/crop
renderer_vulkan: fix cropping for presentation
2023-11-06 12:08:03 -05:00
liamwhite a423e0f9e0
renderer_vulkan: render on bottom of surface clip when flipped (#11894) 2023-11-05 21:47:35 +01:00
Liam 75de0cadcf renderer_null: fix 2023-11-03 20:54:38 -04:00
Liam 41701052d3 renderer_vulkan: minimize transform feedback support log 2023-11-01 20:47:08 -04:00
Ameer J 75c5be55af shader_recompiler: Align SSBO offsets in GlobalMemory functions 2023-10-31 20:14:18 -04:00
Ameer J 735612c9b3 buffer_cache: Apply storage buffer alignment only to the offset 2023-10-31 20:10:54 -04:00
Ameer J 7d34800531 shader_recompiler: Align SSBO offsets to meet host requirements
Co-Authored-By: Billy Laws <blaws05@gmail.com>
2023-10-31 20:10:54 -04:00
liamwhite 1836e62d33
Merge pull request #11910 from liamwhite/surface-lost-on-creation
renderer_vulkan: ensure exception on surface loss
2023-10-30 09:59:37 -04:00
liamwhite ed2d77ddbc
Merge pull request #11893 from liamwhite/swizzle
renderer_vulkan: fix viewport swizzle dirty state tracking
2023-10-29 19:46:20 -04:00
Liam 8427b9d49d renderer_vulkan: ensure exception on surface loss 2023-10-29 15:31:05 -04:00
liamwhite 4da2105a32
Merge pull request #11862 from liamwhite/pascal-robust
Manually robust on Pascal and earlier
2023-10-29 11:25:15 -04:00
liamwhite 1f9684eaf9
Merge pull request #11859 from Kelebek1/compute_findbuffer
Add missing loop around compute FindBuffer calls
2023-10-29 11:25:09 -04:00
Liam 6513a356f0 renderer_vulkan: fix FSR cropping 2023-10-28 11:43:00 -04:00
Liam 65d4a16afd renderer_vulkan: fix cropping for presentation 2023-10-28 00:05:06 -04:00
Liam 21c631b33b renderer_vulkan: fix viewport swizzle dirty state tracking 2023-10-27 14:23:47 -04:00
Liam e0834ee50b vulkan_common: use highest API version 2023-10-24 17:04:17 -04:00
Kelebek1 68f25217b8 Add missing dowhile loops around FindBuffer calls 2023-10-23 15:08:56 +01:00
Liam 0604b14263 Manually robust on Pascal and earlier 2023-10-23 09:08:57 -04:00
liamwhite 4b06bcc82c
Merge pull request #11789 from Kelebek1/spirv_shift_right
Manually robust on Maxwell and earlier
2023-10-21 18:21:53 -04:00
liamwhite b56c7397ad
Merge pull request #11806 from liamwhite/needs-more-locking
renderer_vulkan: add locks to avoid scheduler flushes from CPU
2023-10-20 10:26:03 -04:00
Kelebek1 e02ee8e59d Manually robust on Maxwell and earlier 2023-10-19 19:54:31 +01:00
liamwhite 134ecca9b0
Merge pull request #11810 from liamwhite/clang-17
general: fix build failure on clang 17
2023-10-18 19:30:29 -04:00
liamwhite c5f1ec8040
Merge pull request #11795 from Squall-Leonhart/D32FToOther
[Vulkan]Implement missing copy formats for D32, ARGB8_SRGB and BGRA8_Unorm/SRGB
2023-10-18 09:22:14 -04:00
Liam c5bdc0054c general: fix build failure on clang 17 2023-10-17 22:44:21 -04:00
liamwhite fa56518f20
Merge pull request #11747 from Kelebek1/image_alias_sample_names
Small things
2023-10-17 11:48:57 -04:00
liamwhite b577d7a55f
Merge pull request #11349 from vonchenplus/buffer_cache_crash
video_core: Fix moltenvk crash on macos
2023-10-17 11:48:44 -04:00
Liam d9dde7e6f3 renderer_vulkan: add locks to avoid scheduler flushes from CPU 2023-10-17 10:00:25 -04:00
Fernando S 2244b613cf
Merge pull request #11788 from Squall-Leonhart/IFREMOVED
[crash fix]brings back the removed if  statement in util.cpp and adds the  num_level test to it like previous discontinued PR
2023-10-17 14:36:36 +02:00
Squall-Leonhart 326ebbb2fa Changes based on hardware tests
Removes unnecessary d32f to bgra shader and blit functions,
update vk_texture_cache to use abgr shader for d32f to BGRA formats
updates  abgr to d32f shader to comply with hardware tests
2023-10-17 02:42:40 +11:00