Matías Locatti
40497ab00f
Merge pull request #10529 from liamwhite/critical-spacing
...
caches: make critical reclamation less eager and possible in more cases
2024-02-20 23:19:27 -03:00
FearlessTobi
4d55e58ee4
scope_exit: Make constexpr
...
Allows the use of the macro in constexpr-contexts.
Also avoids some potential problems when nesting braces inside it.
2024-02-19 16:00:46 +01:00
Liam
749f0564ae
shader_recompiler: throw on missing geometry streams in geometry shaders
2024-02-19 00:34:00 -05:00
Liam
a956f0f4f8
vulkan_device: don't use fixed cap for memory limits
2024-02-18 18:59:13 -05:00
Liam
02430ed002
buffer_cache: use mapped range with large vertex buffer size
2024-02-13 08:27:33 -05:00
liamwhite
c741b765dd
Merge pull request #12975 from FernandoS27/keep-your-own-vodoo-doll-away-from-gf
...
Texture Cache: Fix untracking on GPU remap
2024-02-13 08:17:59 -05:00
Narr the Reg
e29b241a5a
Merge pull request #12756 from liamwhite/applet-multiprocess-hwc
...
general: applet multiprocess
2024-02-11 20:58:28 -06:00
Liam
25f5a651a9
texture_cache: tweak iteration tracking change
2024-02-11 13:41:13 -05:00
Liam
9a10c66e40
texture_cache: avoid overestimation of ASTC texture sizes
2024-02-11 13:41:13 -05:00
Liam
e882f6c1c3
caches: make critical reclamation less eager and possible in more cases
2024-02-11 13:41:13 -05:00
Liam
47eeb0008b
host_shaders: add vendor workaround for adreno drivers
2024-02-10 12:02:37 -05:00
Fernando Sahmkow
75847f0e8b
Texture Cache: Fix untracking on GPU remap
2024-02-10 14:49:49 +01:00
Liam
ba17a8c2b8
gpu: dependency-inject scaling/antialiasing filter state for capture layers
2024-02-09 09:20:53 -05:00
Liam
ce72818075
nvnflinger/gpu: implement applet capture
2024-02-09 09:20:53 -05:00
Liam
1c32e4157c
nvnflinger/gpu: implement blending
2024-02-09 09:20:53 -05:00
Liam
85abd0243e
video_core: defensively program around unmapped device pointers
2024-02-09 09:20:53 -05:00
liamwhite
d26c4a5090
Merge pull request #12914 from FernandoS27/vc-refactor
...
VideoCore Refactor Part 1.
2024-02-08 10:59:59 -05:00
liamwhite
9e83fdcde3
Merge pull request #12883 from FernandoS27/memory_manager_mem
...
MemoryManager: Reduce the page table size based on last big page address.
2024-02-06 10:25:03 -05:00
Fernando Sahmkow
758d895408
Common: Rename SplitRangeSet to OverlapRangeSet
2024-02-05 23:01:17 +01:00
Fernando Sahmkow
80d505b5cf
Buffer Cache: Refactor to use Range sets instead
2024-02-05 11:06:52 +01:00
Fernando Sahmkow
4d97c54676
VideoCore: Move Slot Vector to Common
2024-02-04 20:01:47 +01:00
liamwhite
3868b44440
Merge pull request #12885 from Moonlacer/eclipse-fix
...
structured_control_flow: Add Samsung Proprietary Driver ID to Reorder Pass
2024-02-02 09:08:54 -05:00
Fernando S
9162ecd960
Merge pull request #12761 from liamwhite/mp-composite
...
video_core: rewrite presentation for layer composition
2024-02-02 15:08:06 +01:00
Moonlacer
309ca2bd3b
Clang Fix
2024-02-01 18:15:21 -06:00
Moonlacer
31200d0c7a
Add Samsung Proprietary Driver ID to Reorder Pass
...
For RDNA-based Samsung Xclipse GPUs
2024-02-01 17:53:26 -06:00
Fernando Sahmkow
4d65645d80
MemoryManager: Reduce the page table size based on last big page address.
2024-02-01 13:00:36 +01:00
Fernando Sahmkow
4c68fc6ea7
SwBlitter: Fix Pitch linear reading/writting
2024-01-31 23:02:10 +01:00
Liam
5ec76db392
nvnflinger/gpu: implement layer stack composition
2024-01-31 11:27:21 -05:00
Liam
d2f98ce312
renderer_opengl: implement layer stack composition
2024-01-31 11:27:21 -05:00
Liam
f727f13cb9
renderer_vulkan: implement layer stack composition
2024-01-31 11:27:21 -05:00
Liam
2a314f9e2e
renderer_opengl: split up blit screen resources into antialias and window adapt passes
2024-01-31 11:27:21 -05:00
Liam
64eb14d45a
renderer_opengl: move out ownership of FSR resources
2024-01-31 11:27:21 -05:00
Liam
cc8493ea2e
renderer_vulkan: convert FSR to graphics pipeline
2024-01-31 11:27:21 -05:00
Liam
dbcfa26891
renderer_opengl: move out FSR shader source construction
2024-01-31 11:27:20 -05:00
Liam
bd9c228844
renderer_opengl: split out FXAA
2024-01-31 11:27:20 -05:00
Liam
5d9ae38249
renderer_opengl: split out SMAA
2024-01-31 11:27:20 -05:00
Liam
86bfa837fc
renderer_vulkan: split up blit screen resources into separate antialias and window adapt passes
2024-01-31 11:27:20 -05:00
Liam
f50296ab23
renderer_vulkan: isolate FXAA from blit screen
2024-01-31 11:27:20 -05:00
Liam
e8fa898313
renderer_opengl: isolate core presentation code
2024-01-31 11:27:20 -05:00
Liam
cd8049a5e2
video_core: consistently account for resolution scaling when rendering
2024-01-31 11:27:20 -05:00
Liam
84678c7014
video_core: simplify accelerated surface fetch and crop handling between APIs
2024-01-31 11:27:20 -05:00
Fernando Sahmkow
352f6d22e3
Texture Cache: make sparse texture table per channel
2024-01-31 16:38:51 +01:00
liamwhite
9b07313a94
Merge pull request #12814 from Kelebek1/time_new_ipc
...
Move time services to new IPC and add debug printing
2024-01-29 09:08:46 -05:00
liamwhite
bc857b4b5a
Merge pull request #12439 from FireBurn/vkresult
...
Simplify VkResult lookup
2024-01-29 09:08:32 -05:00
Kelebek1
05afa94a3b
Move time services to new IPC.
...
Add some fixes/improvements to usage with the new IPC
2024-01-27 03:30:09 +00:00
liamwhite
0ab550c726
Merge pull request #12499 from Kelebek1/time
...
Rework time services
2024-01-25 14:19:01 -05:00
Matías Locatti
fa47a39052
Demote Mesa dozen to the bottom of the device list
2024-01-24 23:36:14 -03:00
Kelebek1
52c35521bd
Rework time service to fix time passing offline.
2024-01-24 04:26:55 +00:00
liamwhite
5a6b3a0125
Merge pull request #12579 from FernandoS27/smmu
...
Core: Implement Device Mapping & GPU SMMU
2024-01-22 10:55:39 -05:00
Mike Lothian
0a3c09f2f6
Simplify VkResult lookup
2024-01-22 03:10:43 +00:00
Mike Lothian
2348a5bdab
Add Vulkan-Utility-Libraries dependency
2024-01-22 01:30:44 +00:00
Fernando Sahmkow
241c64e43b
Core: Eliminate core/memory dependancies.
2024-01-18 21:12:30 -05:00
Fernando Sahmkow
eda09c091a
SMMU: Fix 8Gb layout.
2024-01-18 21:12:30 -05:00
Fernando Sahmkow
b206089ea7
Core: Clang format and other small issues.
2024-01-18 21:12:30 -05:00
Fernando Sahmkow
43de47538a
SMMU: Simplify and remove old code.
2024-01-18 21:12:30 -05:00
Fernando Sahmkow
355bbea52d
SMMU: Add Android compatibility
2024-01-18 21:12:30 -05:00
Fernando Sahmkow
ff6cd1c212
GPU-SMMU: Estimate game leak and preallocate device region.
2024-01-18 21:12:30 -05:00
Fernando Sahmkow
bb7b14acd5
GPU SMMU: Expand to 34 bits
2024-01-18 21:12:30 -05:00
Fernando Sahmkow
f11218a03e
SMMU: Implement physical memory mirroring
2024-01-18 21:12:30 -05:00
Fernando Sahmkow
9db159da71
SMMU: Initial adaptation to video_core.
2024-01-18 21:12:30 -05:00
Fernando Sahmkow
d0329a2c00
SMMU: Implement backing CPU page protect/unprotect
2024-01-18 21:12:30 -05:00
Fernando Sahmkow
eb4f7f35ea
NVDRV: Implement sessions and initial implementation of SMMU
2024-01-18 21:12:30 -05:00
Fernando Sahmkow
04b4af6044
Core: Initial implementation of device memory mapping
2024-01-18 21:12:30 -05:00
Liam
be2a32b041
renderer_vulkan: recreate swapchain when frame size changes
2024-01-16 16:09:39 -05:00
Viktor Szépe
897ff8a95c
Fix one more typo
2024-01-15 23:34:11 +00:00
Viktor Szépe
e895ebb546
Fix typos in video_core
2024-01-07 22:44:55 +00:00
liamwhite
8da33ba38a
Merge pull request #12437 from ameerj/gl-amd-fixes
...
OpenGL: Fixes and workaround updates for AMD
2024-01-04 15:53:44 -05:00
Fernando Sahmkow
d9b2778306
Vulkan: Only recreate swapchain if the frame is bigger than the swap image.
2023-12-31 21:03:46 +01:00
Fernando Sahmkow
a81686eff8
MaxwellDMA: Don't flush the outputs of a dma copy.
2023-12-31 21:00:01 +01:00
Fernando S
64dd40ee88
Merge pull request #12479 from GPUCode/linear-bcn
...
video_core: Fix buffer_row_length for linear compressed textures
2023-12-30 06:56:08 +01:00
liamwhite
aec8115476
Merge pull request #12449 from liamwhite/debug-utils
...
renderer_vulkan: skip SetObjectNameEXT on unsupported driver
2023-12-26 11:45:39 -05:00
liamwhite
fd035bfd90
Merge pull request #12448 from liamwhite/format-assert
...
renderer_vulkan: demote format assert to error log
2023-12-26 11:45:33 -05:00
liamwhite
8502b07266
Merge pull request #12415 from ameerj/ogl-draw-auto
...
gl_rasterizer: Implement DrawTransformFeedback macro
2023-12-26 11:45:25 -05:00
GPUCode
1bc4b6c75d
video_core: Fix buffer_row_length computation for linear compressed textures
2023-12-26 16:33:03 +02:00
Liam
072c63ec91
renderer_vulkan: skip SetObjectNameEXT on unsupported driver
2023-12-23 11:08:02 -05:00
Liam
188916635a
renderer_vulkan: demote format assert to error log
2023-12-23 11:04:02 -05:00
liamwhite
84a1054801
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
d73d8e8471
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
a952270b5c
shader_recompiler: use float image operations on load/store when required
2023-12-21 14:34:46 -05:00
Ameer J
b09ab3540d
gl_device: Remove AMD blacklists that are no longer applicable
2023-12-20 18:19:15 -05:00
liamwhite
154009b915
Merge pull request #12414 from jbeich/vk274
...
externals: update Vulkan-Headers to v1.3.274
2023-12-20 12:46:50 -05:00
liamwhite
3db4ff982c
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
18b7ed6453
Merge pull request #12403 from liamwhite/clipdistance
...
shader_recompiler: use minimal clip distance array
2023-12-20 18:45:20 +01:00
Fernando S
33f38c09aa
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
ecd92c9b2b
gl_rasterizer: Less spammy log for unimplemented resets
2023-12-20 11:51:44 -05:00
Ameer J
2fc6f3fcfd
gl_rasterizer: Implement DrawTransformFeedback macro
2023-12-19 19:54:57 -05:00
Jan Beich
af5d54b6c8
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
d5b1a5f27d
OpenGL: Add GL_PRIMITIVES_GENERATED and GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN queries
2023-12-19 17:32:31 -05:00
Ameer J
5fea802712
gl_rasterizer: Silence spammy logs
2023-12-19 17:13:23 -05:00
Ameer J
86b262e42d
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
6687915b0f
renderer_vulkan: don't pass null view when nullDescriptor is not supported
2023-12-19 15:13:10 -05:00
Fernando S
0f928af7ab
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
6611ba122b
shader_recompiler: ignore clip distances beyond driver support level
2023-12-18 22:25:14 -05:00
Ameer J
8a2c42c6e8
vk_query_cache: Fix prefix sum max_accumulation_limit logic
2023-12-18 12:37:55 -05:00
liamwhite
4504ee7f28
Revert "video_core: use interval map for page count tracking"
2023-12-17 18:59:49 -05:00
Liam
47429e716c
renderer_vulkan: work around turnip binding bug in a610
2023-12-17 15:45:09 -05:00
Liam
273b4b9576
renderer_vulkan: allow up to 7 swapchain images
2023-12-16 18:59:44 -05:00
liamwhite
4611a37b83
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
68b1037350
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
ede1dd9d8b
gl_buffer_cache: Fix tfb binding typo
2023-12-16 12:48:21 -05:00
Liam
eb6a042654
video_core: lock interval map update
2023-12-14 22:10:21 -05:00
Liam
7fa76caf80
video_core: use interval map for page count tracking
2023-12-14 21:54:36 -05:00
Liam
03d73e14a8
renderer_vulkan: bound async presentation queue growth
2023-12-14 15:54:56 -05:00
liamwhite
2c8dc35bf4
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
c7e0ee60cd
codec: Update to use av frame flags
...
Resolves Clang -Wdeprecated-declarations warning from interlaced_frame
2023-12-05 21:10:38 -05:00
liamwhite
a92e0194a2
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
63ceff87b0
texture_cache: fix max_element comparison function
2023-12-03 18:40:19 -05:00
Liam
eb10ce6fdd
renderer_opengl: remove srgb conversion logic
2023-12-03 17:08:25 -05:00
Liam
8a97178a89
renderer_vulkan: do not recreate swapchain for srgb
2023-12-03 16:43:54 -05:00
liamwhite
46ab4ee5a5
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
8c522bf3a7
Merge pull request #12261 from liamwhite/fruit-company
...
texture_cache: use pedantic type names
2023-12-02 09:28:43 -05:00
Liam
9014e6783f
texture_cache: use pedantic type names
2023-12-01 22:46:33 -05:00
GPUCode
8188d923c8
vk_blit_screen: Use correct format for fxaa renderpass
2023-12-01 22:55:50 +02:00
liamwhite
c84e8ce6b7
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
9d2c18b72d
renderer_vulkan: adjust window origin and swizzle independently
2023-11-30 12:33:26 -05:00
Liam
2ccd547309
renderer_vulkan: exclude more qcom drivers from extensions
2023-11-29 21:06:06 -05:00
liamwhite
95ad671ce9
Merge pull request #12194 from liamwhite/fruit-company
...
video_core: fix mac compile
2023-11-29 12:33:41 -05:00
liamwhite
f6c13b4dad
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
a9e011c9c2
Merge branch 'master' into ssbo-align
2023-11-26 21:08:53 -05:00
Liam
bd250e303f
video_core: fix mac compile
2023-11-26 20:04:06 -05:00
Fernando S
896ae72dbf
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
1474bd4eff
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
f50189075b
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
a0ed6c0653
vulkan_device: add names for more driverID enumeration values
2023-11-24 12:00:41 -05:00
Liam
86d9651d5d
renderer_vulkan: exclude steam deck oled from force max clock setting
2023-11-24 11:38:39 -05:00
Liam
1e62aaf305
query_cache: demote report synced unreachable to assert
2023-11-23 09:33:02 -05:00
liamwhite
7783363cfc
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
3efaed605c
vk_texture_cache: add workaround for nullDescriptor on Mali
2023-11-20 20:09:12 -05:00
Ameer J
9c3cc36abc
gl_buffer_cache: Batch vertex/tfb buffer binding
2023-11-19 17:17:16 -05:00
Liam
a41e57d968
renderer_vulkan: ignore viewport stores on non-supporting drivers
2023-11-19 11:27:12 -05:00
liamwhite
d0d6abbc21
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
aa609d5dad
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
34eac6afde
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
c6330ca05f
Vulkan: Be more generous with pipeline workers for Android
2023-11-19 14:54:15 +01:00
Fernando Sahmkow
6bf827f4e9
Buffer Cache: Eliminate clears on Indirect buffers
2023-11-18 19:26:14 +01:00
Ameer J
abd400e04f
shader_recompiler: Fix spelling of "derivate" ( #12067 )
2023-11-18 13:39:47 +01:00
Ameer J
a3ba9c64d7
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
767b024755
video_core: refactor video frame and packet parsing
2023-11-16 17:01:38 -05:00
Fernando Sahmkow
dbb9e0c5fe
Query Cache: Disable write syncing on Android
2023-11-15 02:23:39 +01:00
Fernando Sahmkow
1918f97dea
Vulkan: Add a final barrier to the upload command buffer
2023-11-12 20:58:30 +01:00
GPUCode
4b853ff5cf
renderer_vulkan: Introduce separate cmd buffer for uploads
2023-11-12 20:27:39 +01:00
Fernando Sahmkow
ce3c3c0038
Memory: Fix invalidation handling from the CPU/Services
2023-11-12 14:10:40 +01:00
Fernando Sahmkow
b9087d53d5
Revert "renderer_vulkan: add locks to avoid scheduler flushes from CPU"
...
This reverts commit 1bd99c1d65 .
2023-11-10 15:40:48 +01:00
liamwhite
694cbdefec
Merge pull request #11896 from liamwhite/crop
...
renderer_vulkan: fix cropping for presentation
2023-11-06 12:08:03 -05:00
liamwhite
9c1b9171ae
renderer_vulkan: render on bottom of surface clip when flipped ( #11894 )
2023-11-05 21:47:35 +01:00
Liam
6f74c988ba
renderer_null: fix
2023-11-03 20:54:38 -04:00
Liam
fe9cd5c92f
renderer_vulkan: minimize transform feedback support log
2023-11-01 20:47:08 -04:00
Ameer J
b49639e786
shader_recompiler: Align SSBO offsets in GlobalMemory functions
2023-10-31 20:14:18 -04:00
Ameer J
f4848349b5
buffer_cache: Apply storage buffer alignment only to the offset
2023-10-31 20:10:54 -04:00
Ameer J
e538b932de
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
41a85e1974
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
6bbe96f99f
Merge pull request #11893 from liamwhite/swizzle
...
renderer_vulkan: fix viewport swizzle dirty state tracking
2023-10-29 19:46:20 -04:00
Liam
1cbde13ad5
renderer_vulkan: ensure exception on surface loss
2023-10-29 15:31:05 -04:00
liamwhite
209224c01b
Merge pull request #11862 from liamwhite/pascal-robust
...
Manually robust on Pascal and earlier
2023-10-29 11:25:15 -04:00
liamwhite
257dfeaccf
Merge pull request #11859 from Kelebek1/compute_findbuffer
...
Add missing loop around compute FindBuffer calls
2023-10-29 11:25:09 -04:00
Liam
b89f19b0f3
renderer_vulkan: fix FSR cropping
2023-10-28 11:43:00 -04:00
Liam
00d53a6ca9
renderer_vulkan: fix cropping for presentation
2023-10-28 00:05:06 -04:00
Liam
8cd91dae6d
renderer_vulkan: fix viewport swizzle dirty state tracking
2023-10-27 14:23:47 -04:00
Liam
bd45923351
vulkan_common: use highest API version
2023-10-24 17:04:17 -04:00
Kelebek1
5d26c3791b
Add missing dowhile loops around FindBuffer calls
2023-10-23 15:08:56 +01:00
Liam
64717fdf1d
Manually robust on Pascal and earlier
2023-10-23 09:08:57 -04:00
liamwhite
b34364e673
Merge pull request #11789 from Kelebek1/spirv_shift_right
...
Manually robust on Maxwell and earlier
2023-10-21 18:21:53 -04:00
liamwhite
7f8be72d79
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
90d99fbd00
Manually robust on Maxwell and earlier
2023-10-19 19:54:31 +01:00
liamwhite
d2a1535588
Merge pull request #11810 from liamwhite/clang-17
...
general: fix build failure on clang 17
2023-10-18 19:30:29 -04:00
liamwhite
67c3d2abb5
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
181e5dbc5b
general: fix build failure on clang 17
2023-10-17 22:44:21 -04:00
liamwhite
68bf6fb457
Merge pull request #11747 from Kelebek1/image_alias_sample_names
...
Small things
2023-10-17 11:48:57 -04:00
liamwhite
97c9b2eda6
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
1bd99c1d65
renderer_vulkan: add locks to avoid scheduler flushes from CPU
2023-10-17 10:00:25 -04:00
Fernando S
30d96be28d
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
3785a469c0
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
Squall Leonhart
14d6c9d442
Make Clang happy.
2023-10-17 00:26:19 +11:00
Squall Leonhart
6f7ff1d2a7
Added missing BuildShader line
...
Adds `convert_abgr8_to_d32f_frag(BuildShader(device, CONVERT_ABGR8_TO_D32F_FRAG_SPV)),`
2023-10-17 00:15:31 +11:00
Squall Leonhart
0fff99d0eb
added missing trailing line.
2023-10-16 06:07:26 +11:00
Squall Leonhart
f137a4aa8a
meant to add the unorms as well
2023-10-16 04:29:24 +11:00
Squall-Leonhart
9e0b778d11
use texelfetch instead of texturelod
2023-10-16 04:20:45 +11:00
Squall Leonhart
81627a6a51
appease the format gods
2023-10-16 03:24:44 +11:00
Squall-Leonhart
69ab83ae87
Another missing copy connected to Bravely Default II
...
adds blit_image_helper.ConvertABGR8ToD32F and fragment shader for performing ABGR and BGRA to D32F copies
2023-10-16 03:17:53 +11:00
Squall-Leonhart
51bb940261
missed this line when editing the copypasta
2023-10-15 20:58:50 +11:00
Squall-Leonhart
41ad912ba7
moved line to appease the format gods
2023-10-15 20:54:25 +11:00
Squall-Leonhart
e84147e2fa
Implement missing formats for Bravely Default 2
2023-10-15 20:43:48 +11:00
Squall Leonhart
eecd48f2ee
brings back the removed If statement and adds the num_level test
...
This resolves the out of bounds read/writes in the linear swizzler, it brings back the scaled TOTK Recall bug however, pending further work in the block size calculation.
Recall is not glitched in the Dynamic FPS resolution mod to the degree that it is in the native yuzu scaler, this can be a workaround for the time being.
The recall effect is constructed from multiple 320x180 texture slices, it breaking may have a similar origin to https://github.com/Ryujinx/Ryujinx/pull/5640
but it may also be connected to the other deficiencies identified in the Yuzu size calculations, such as no apparent implementation of slice testing for end of slce depth as opposed to full aligned size as implemented in https://github.com/Ryujinx/Ryujinx/pull/5220
2023-10-15 02:09:28 +11:00
Valeri
9d3cce87a4
host1x/codecs: enable CUDA on Linux
2023-10-14 17:35:45 +03:00
Kelebek1
d7ba2c7064
Implement vertex array first and subsequent draws
2023-10-14 12:09:35 +01:00
liamwhite
38f60c74eb
Merge pull request #11751 from Kelebek1/transition_msaa_image
...
Transition MSAA images to general layout without uploading data
2023-10-12 11:17:20 -04:00
Kelebek1
5fa3d987ad
Transition MSAA images to general layout without uploading data
2023-10-11 23:27:23 +01:00
liamwhite
43de99b6e2
Merge pull request #11744 from Kelebek1/no_res_no_rescaled
...
Do not set rescaled flag when rescaling is disabled
2023-10-11 17:54:59 -04:00
Kelebek1
b5576a3c9a
Get out of render pass before query barriers, fix image names with samples > 1, remove image alias bit
2023-10-11 17:15:35 +01:00
liamwhite
5c567dbc68
Merge pull request #11734 from Kelebek1/device_local_buffer_alloc
...
Do not allocate DeviceLocal buffers as mapped
2023-10-11 09:24:28 -04:00
liamwhite
99958bb1d0
Merge pull request #11683 from Kelebek1/do_not_sync_on_written_buffer
...
Do not double sync written buffers, move mark written to binding
2023-10-11 09:24:05 -04:00
Fernando S
0cc1d8135f
Merge pull request #11743 from Squall-Leonhart/IFREMOVED
...
Fix mistaken usage of info.block instead of level_info.block
2023-10-11 11:56:47 +02:00
Kelebek1
31c39fffc2
Do not set rescaled flag when rescaling is disabled
2023-10-11 10:29:19 +01:00
Squall-Leonhart
ce3e98cf48
Fix mistaken usage of info.block instead of level_info.block
...
Fixed an error on my part, in the last change I had mistakenly passed unadjusted block info into FullUploadSwizzles and UnswizzleImage
Revert (my mistaken changing of) the construction of SwizzleParameters in UnswizzleImage and FullUploadSwizzles to use level_info.block instead of info.block. This ensures that the block information used in the swizzling process is correctly adjusted for each mip level.
2023-10-11 19:12:33 +11:00
liamwhite
22e805e43f
Merge pull request #11534 from Squall-Leonhart/IFREMOVED
...
Partial revert of #10433 (Texture Cache Util: Fix block depth adjustment on slices)
2023-10-10 12:44:48 -04:00
Kelebek1
2fe13a4d53
Not not allocate DeviceLocal buffers as mapped
2023-10-10 12:49:07 +01:00
Squall Leonhart
ca3126e68d
add Z32, FLOAT, UINT, UINT, UINT, LINEAR to format lookup table
...
Should fix and close #11711
2023-10-09 02:13:17 +11:00
liamwhite
cfb7500e29
Merge pull request #11656 from liamwhite/recreate-surface-automatically
...
vk_present_manager: recreate surface on any surface loss
2023-10-07 12:49:54 -04:00
liamwhite
55c251a65e
Merge pull request #11677 from Squall-Leonhart/D32FTOABGR8
...
Implements D32_Float to A8B8G8R8_UNORM format copy
2023-10-07 12:49:48 -04:00
liamwhite
ce6e0114ba
Merge pull request #11630 from Kelebek1/clear_stencil_requires_depth_test
...
Enable depth test on depthstencil clear path
2023-10-07 12:49:37 -04:00
liamwhite
b932f304ad
Merge pull request #11544 from Kelebek1/reduce_stream_buffer_renderdoc
...
Allow GPUs without rebar to open multiple RenderDoc captures
2023-10-07 12:49:19 -04:00
liamwhite
d14f8815b1
Merge pull request #11688 from Kelebek1/x8d42
...
Implement X8_D24 pixel format
2023-10-07 10:55:14 -04:00
liamwhite
bab15ef979
Merge pull request #11684 from Kelebek1/disable_push_descriptor_maxwell
...
Disable push descriptor for Pascal and older nVidia architectures
2023-10-07 10:54:52 -04:00
Squall Leonhart
c3658018b1
update shader to confirmed format copy
2023-10-07 18:28:09 +11:00
Kelebek1
a1df96e84d
Allow GPUs without rebar to open multiple RenderDoc captures
2023-10-06 07:52:06 +01:00
Kelebek1
5063305487
Implement X8_D24 format
2023-10-06 00:58:30 +01:00
Kelebek1
39bcdb4fe4
Rework nvidia architecture detection, disable push descriptor for Pascal and older
2023-10-05 03:13:42 +01:00
Kelebek1
294ffa29cc
Mark a buffer GPU modified after the buffers are confirmed, do not double synch them
2023-10-05 00:19:11 +01:00
Squall-Leonhart
15a624a6df
lets not convert depth to greyscale since this makes the exhaust and tire smoke light gray/white
...
tiresmoke should be a darker gray.
2023-10-05 03:14:53 +11:00
Squall-Leonhart
680081ea94
Fix CI Formatting check
2023-10-04 19:12:08 +11:00
Squall-Leonhart
ec6ba091cf
Implements D32_Float to A8B8G8R8_UNORM format copy
...
Corrects some visual issues in games such as Disney SpeedStorm
2023-10-04 19:07:05 +11:00
Liam
79e055318c
vk_present_manager: recreate surface on any surface loss
2023-10-02 19:07:18 -04:00
Liam
445d504f94
ci: fix new codespell errors
2023-10-02 18:03:05 -04:00
Fernando Sahmkow
ef38379737
Query Cache: Fix memory leak.
2023-10-01 11:47:14 +02:00
Fernando S
dcf6de7bdf
Merge pull request #11622 from liamwhite/qcr-reg1
...
renderer_vulkan: fix query cache for homebrew
2023-09-29 06:01:18 +02:00
Kelebek1
dd2d450e3f
Enable depth test on stencil clear path
2023-09-28 21:19:51 +01:00
liamwhite
da04fbdc2e
Merge pull request #11402 from FernandoS27/depth-bias-control
...
Vulkan: Implement Depth Bias Control
2023-09-28 09:35:37 -04:00
Liam
cb11232753
renderer_vulkan: fix query cache for homebrew
2023-09-27 19:11:47 -04:00
GPUCode
30c67e5bb0
host_shaders: More proper handling of x2 MSAA copies
2023-09-25 09:20:32 -04:00
GPUCode
5529df01e3
renderer_vulkan: Implement MSAA copies
2023-09-25 09:20:32 -04:00
liamwhite
8936ff8f89
Merge pull request #11225 from FernandoS27/no-laxatives-in-santas-cookies
...
Y.F.C: Rework the Query Cache.
2023-09-25 09:18:29 -04:00
liamwhite
dab6876db5
Merge pull request #11562 from GPUCode/srgb-madness
...
vk_texture_cache: Limit srgb block to transcoding only
2023-09-24 10:50:28 -04:00
liamwhite
70126192aa
Merge pull request #11165 from Morph1984/ds_blit
...
vulkan_device: Return true if either depth/stencil format supports blit
2023-09-24 10:50:04 -04:00
Fernando Sahmkow
e0477e40bd
Query Cache: Fix Prefix Sums
2023-09-23 23:05:30 +02:00
Fernando Sahmkow
509ebe61c6
Query Cache: Fix behavior in Normal Accuracy
2023-09-23 23:05:30 +02:00
Fernando Sahmkow
6b0a777d19
Query Cache: Simplify Prefix Sum compute shader
2023-09-23 23:05:30 +02:00
Fernando Sahmkow
c2880497ce
Query Cache: Implement host side sample counting.
2023-09-23 23:05:30 +02:00
Fernando Sahmkow
170c82ae7f
Query Cache: Fix guest side sample counting
2023-09-23 23:05:30 +02:00
Fernando Sahmkow
93cd3d8efd
Query Cache: address issues
2023-09-23 23:05:30 +02:00
Fernando Sahmkow
a8fe81b3be
QueryCache: Implement dependant queries.
2023-09-23 23:05:29 +02:00
Fernando Sahmkow
2221256e90
Macro HLE: Add DrawIndirectByteCount
2023-09-23 23:05:29 +02:00
Fernando Sahmkow
5ea12207f3
Query Cachge: Fully rework Vulkan's query cache
2023-09-23 23:05:29 +02:00
Fernando Sahmkow
7f78d844ab
Query Cache: Setup Base rework
2023-09-23 23:05:29 +02:00
liamwhite
8216a30e35
Merge pull request #11557 from GPUCode/brr-format
...
renderer_vulkan: Correct component order for A4B4G4R4_UNORM
2023-09-22 09:56:04 -04:00
Kelebek1
ac61186061
Fix DMA engine register offsets
2023-09-21 20:21:00 +01:00
GPUCode
20994b9e95
vk_texture_cache: Limit srgb block to transcoding only
2023-09-21 21:46:35 +03:00
GPUCode
400b9449ac
renderer_vulkan: Correct component order for A4B4G4R4_UNORM
2023-09-21 15:33:44 +03:00
Squall-Leonhart
55e400acd9
Reuse part of my previous idea to to use num_levels to check within AdjustMipBlockSize
...
The partial revert was not enough for Tsukihime, this might do the trick
2023-09-20 03:27:13 +10:00
liamwhite
8f2351603d
Merge pull request #11258 from Squall-Leonhart/Z16_Assert_Fix
...
Fix a logged assert in the format lookup table for Z16
2023-09-18 09:31:05 -04:00
Squall Leonhart
0ec7d7ec28
Partial revert of #10433
...
The If block in this change was causing some 2D textures to be treated as if their mip 0 was a 3D Slice, this could be ascertained as the same texture viewed from different distances would render fine, but then close up would look like a decoding failure.
It also resulted in some 3D ASTC textures not being scaled appropriate leading to broken graphical effects such as the jagged TOTK recall animation being a circle, as the If block was only accepting the image based on its original info without any adjustments applied.
2023-09-18 23:28:53 +10:00
Charles Lombardo
a8e3f2652d
android: Use 1 worker for shader compilation for all devices
2023-09-16 21:38:28 -04:00
Fernando Sahmkow
dcf5c4bec0
Vulkan: add temporary workaround for AMDVLK
2023-09-16 11:59:20 -04:00
Fernando Sahmkow
6dcc62ae86
Vulkan: Implement Depth Bias Control
2023-09-16 11:58:55 -04:00
Kelebek1
517702f3f8
Look for the most recently modified image for present
2023-09-11 03:11:29 +01:00
liamwhite
4d34ba4d9d
Merge pull request #11470 from GPUCode/bundle-vvl
...
android: Add option to bundle validation layer
2023-09-10 13:40:18 -04:00
GPUCode
065305c627
vk_buffer_cache: Respect max vertex bindings in BindVertexBuffers ( #11471 )
2023-09-10 02:19:45 +02:00
GPUCode
75213f8c49
renderer_vulkan: Remove debug report
...
* VVL has implemented the more modern alternative, thus we don't need to support it anymore
2023-09-08 23:28:46 +03:00
Feng Chen
666bdc1125
video_core: Fix d24r8/s8d24 convert shader build error in moltenvk
2023-09-07 18:01:36 +08:00
Feng Chen
a356e6b8d5
video_core: Add missing scissor update when viewport scale offset disable
2023-09-07 18:01:30 +08:00
liamwhite
230e40a2d6
Merge pull request #11383 from FernandoS27/are-you-a-wabbit
...
Fix regressions that damaged compute indirect & use reinterpret for copies with different byteblocksizes
2023-09-02 14:42:42 -04:00