summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/video_core/renderer_vulkan/vk_blit_screen.cpp1
-rw-r--r--src/video_core/renderer_vulkan/vk_device.cpp3
-rw-r--r--src/video_core/renderer_vulkan/vk_pipeline_cache.cpp5
-rw-r--r--src/video_core/renderer_vulkan/vk_rasterizer.cpp9
-rw-r--r--src/video_core/renderer_vulkan/vk_sampler_cache.cpp1
-rw-r--r--src/video_core/renderer_vulkan/vk_texture_cache.cpp2
6 files changed, 18 insertions, 3 deletions
diff --git a/src/video_core/renderer_vulkan/vk_blit_screen.cpp b/src/video_core/renderer_vulkan/vk_blit_screen.cpp
index ce53e5a6b..a551e3de8 100644
--- a/src/video_core/renderer_vulkan/vk_blit_screen.cpp
+++ b/src/video_core/renderer_vulkan/vk_blit_screen.cpp
@@ -696,6 +696,7 @@ void VKBlitScreen::CreateFramebuffers() {
696 .flags = 0, 696 .flags = 0,
697 .renderPass = *renderpass, 697 .renderPass = *renderpass,
698 .attachmentCount = 1, 698 .attachmentCount = 1,
699 .pAttachments = nullptr,
699 .width = size.width, 700 .width = size.width,
700 .height = size.height, 701 .height = size.height,
701 .layers = 1, 702 .layers = 1,
diff --git a/src/video_core/renderer_vulkan/vk_device.cpp b/src/video_core/renderer_vulkan/vk_device.cpp
index 6245e0d78..0c03e4d83 100644
--- a/src/video_core/renderer_vulkan/vk_device.cpp
+++ b/src/video_core/renderer_vulkan/vk_device.cpp
@@ -771,8 +771,9 @@ std::vector<VkDeviceQueueCreateInfo> VKDevice::GetDeviceQueueCreateInfos() const
771 .pNext = nullptr, 771 .pNext = nullptr,
772 .flags = 0, 772 .flags = 0,
773 .queueFamilyIndex = queue_family, 773 .queueFamilyIndex = queue_family,
774 .queueCount = 1,
775 .pQueuePriorities = nullptr,
774 }); 776 });
775 ci.queueCount = 1;
776 ci.pQueuePriorities = &QUEUE_PRIORITY; 777 ci.pQueuePriorities = &QUEUE_PRIORITY;
777 } 778 }
778 779
diff --git a/src/video_core/renderer_vulkan/vk_pipeline_cache.cpp b/src/video_core/renderer_vulkan/vk_pipeline_cache.cpp
index 42b3a744c..418c62bc4 100644
--- a/src/video_core/renderer_vulkan/vk_pipeline_cache.cpp
+++ b/src/video_core/renderer_vulkan/vk_pipeline_cache.cpp
@@ -261,8 +261,13 @@ VKComputePipeline& VKPipelineCache::GetComputePipeline(const ComputePipelineCach
261 } 261 }
262 262
263 const Specialization specialization{ 263 const Specialization specialization{
264 .base_binding = 0,
264 .workgroup_size = key.workgroup_size, 265 .workgroup_size = key.workgroup_size,
265 .shared_memory_size = key.shared_memory_size, 266 .shared_memory_size = key.shared_memory_size,
267 .point_size = std::nullopt,
268 .enabled_attributes = {},
269 .attribute_types = {},
270 .ndc_minus_one_to_one = false,
266 }; 271 };
267 const SPIRVShader spirv_shader{Decompile(device, shader->GetIR(), ShaderType::Compute, 272 const SPIRVShader spirv_shader{Decompile(device, shader->GetIR(), ShaderType::Compute,
268 shader->GetRegistry(), specialization), 273 shader->GetRegistry(), specialization),
diff --git a/src/video_core/renderer_vulkan/vk_rasterizer.cpp b/src/video_core/renderer_vulkan/vk_rasterizer.cpp
index 2ed2004f0..7500e8244 100644
--- a/src/video_core/renderer_vulkan/vk_rasterizer.cpp
+++ b/src/video_core/renderer_vulkan/vk_rasterizer.cpp
@@ -815,8 +815,13 @@ bool RasterizerVulkan::WalkAttachmentOverlaps(const CachedSurfaceView& attachmen
815 815
816std::tuple<VkFramebuffer, VkExtent2D> RasterizerVulkan::ConfigureFramebuffers( 816std::tuple<VkFramebuffer, VkExtent2D> RasterizerVulkan::ConfigureFramebuffers(
817 VkRenderPass renderpass) { 817 VkRenderPass renderpass) {
818 FramebufferCacheKey key{renderpass, std::numeric_limits<u32>::max(), 818 FramebufferCacheKey key{
819 std::numeric_limits<u32>::max(), std::numeric_limits<u32>::max()}; 819 .renderpass = renderpass,
820 .width = std::numeric_limits<u32>::max(),
821 .height = std::numeric_limits<u32>::max(),
822 .layers = std::numeric_limits<u32>::max(),
823 .views = {},
824 };
820 825
821 const auto try_push = [&key](const View& view) { 826 const auto try_push = [&key](const View& view) {
822 if (!view) { 827 if (!view) {
diff --git a/src/video_core/renderer_vulkan/vk_sampler_cache.cpp b/src/video_core/renderer_vulkan/vk_sampler_cache.cpp
index 2d5460776..b068888f9 100644
--- a/src/video_core/renderer_vulkan/vk_sampler_cache.cpp
+++ b/src/video_core/renderer_vulkan/vk_sampler_cache.cpp
@@ -47,6 +47,7 @@ vk::Sampler VKSamplerCache::CreateSampler(const Tegra::Texture::TSCEntry& tsc) c
47 VkSamplerCustomBorderColorCreateInfoEXT border{ 47 VkSamplerCustomBorderColorCreateInfoEXT border{
48 .sType = VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT, 48 .sType = VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT,
49 .pNext = nullptr, 49 .pNext = nullptr,
50 .customBorderColor = {},
50 .format = VK_FORMAT_UNDEFINED, 51 .format = VK_FORMAT_UNDEFINED,
51 }; 52 };
52 std::memcpy(&border.customBorderColor, color.data(), sizeof(color)); 53 std::memcpy(&border.customBorderColor, color.data(), sizeof(color));
diff --git a/src/video_core/renderer_vulkan/vk_texture_cache.cpp b/src/video_core/renderer_vulkan/vk_texture_cache.cpp
index efd4bb13b..2c6f54101 100644
--- a/src/video_core/renderer_vulkan/vk_texture_cache.cpp
+++ b/src/video_core/renderer_vulkan/vk_texture_cache.cpp
@@ -473,6 +473,8 @@ VkImageView CachedSurfaceView::GetAttachment() {
473 .aspectMask = aspect_mask, 473 .aspectMask = aspect_mask,
474 .baseMipLevel = base_level, 474 .baseMipLevel = base_level,
475 .levelCount = num_levels, 475 .levelCount = num_levels,
476 .baseArrayLayer = 0,
477 .layerCount = 0,
476 }, 478 },
477 }; 479 };
478 if (image_view_type == VK_IMAGE_VIEW_TYPE_3D) { 480 if (image_view_type == VK_IMAGE_VIEW_TYPE_3D) {