diff options
| author | 2022-11-20 09:31:20 -0600 | |
|---|---|---|
| committer | 2022-11-20 09:31:20 -0600 | |
| commit | db7bcd51ae09c4ef25e08096de563903f61e2380 (patch) | |
| tree | 5ae9977b48e1aff118fae3ebffb215b0b4afa887 /src/video_core/renderer_vulkan | |
| parent | service: nfc: Implement nfc user (diff) | |
| parent | Merge pull request #9238 from german77/cabinet_applet (diff) | |
| download | yuzu-db7bcd51ae09c4ef25e08096de563903f61e2380.tar.gz yuzu-db7bcd51ae09c4ef25e08096de563903f61e2380.tar.xz yuzu-db7bcd51ae09c4ef25e08096de563903f61e2380.zip | |
Merge branch 'master' into nfc_impl
Diffstat (limited to 'src/video_core/renderer_vulkan')
5 files changed, 9 insertions, 3 deletions
diff --git a/src/video_core/renderer_vulkan/renderer_vulkan.cpp b/src/video_core/renderer_vulkan/renderer_vulkan.cpp index d8131232a..c2a95200b 100644 --- a/src/video_core/renderer_vulkan/renderer_vulkan.cpp +++ b/src/video_core/renderer_vulkan/renderer_vulkan.cpp | |||
| @@ -172,6 +172,7 @@ void RendererVulkan::SwapBuffers(const Tegra::FramebufferConfig* framebuffer) { | |||
| 172 | } | 172 | } |
| 173 | 173 | ||
| 174 | void RendererVulkan::Report() const { | 174 | void RendererVulkan::Report() const { |
| 175 | using namespace Common::Literals; | ||
| 175 | const std::string vendor_name{device.GetVendorName()}; | 176 | const std::string vendor_name{device.GetVendorName()}; |
| 176 | const std::string model_name{device.GetModelName()}; | 177 | const std::string model_name{device.GetModelName()}; |
| 177 | const std::string driver_version = GetDriverVersion(device); | 178 | const std::string driver_version = GetDriverVersion(device); |
| @@ -181,9 +182,12 @@ void RendererVulkan::Report() const { | |||
| 181 | 182 | ||
| 182 | const std::string extensions = BuildCommaSeparatedExtensions(device.GetAvailableExtensions()); | 183 | const std::string extensions = BuildCommaSeparatedExtensions(device.GetAvailableExtensions()); |
| 183 | 184 | ||
| 185 | const auto available_vram = static_cast<f64>(device.GetDeviceLocalMemory()) / f64{1_GiB}; | ||
| 186 | |||
| 184 | LOG_INFO(Render_Vulkan, "Driver: {}", driver_name); | 187 | LOG_INFO(Render_Vulkan, "Driver: {}", driver_name); |
| 185 | LOG_INFO(Render_Vulkan, "Device: {}", model_name); | 188 | LOG_INFO(Render_Vulkan, "Device: {}", model_name); |
| 186 | LOG_INFO(Render_Vulkan, "Vulkan: {}", api_version); | 189 | LOG_INFO(Render_Vulkan, "Vulkan: {}", api_version); |
| 190 | LOG_INFO(Render_Vulkan, "Available VRAM: {:.2f} GiB", available_vram); | ||
| 187 | 191 | ||
| 188 | static constexpr auto field = Common::Telemetry::FieldType::UserSystem; | 192 | static constexpr auto field = Common::Telemetry::FieldType::UserSystem; |
| 189 | telemetry_session.AddField(field, "GPU_Vendor", vendor_name); | 193 | telemetry_session.AddField(field, "GPU_Vendor", vendor_name); |
diff --git a/src/video_core/renderer_vulkan/vk_rasterizer.cpp b/src/video_core/renderer_vulkan/vk_rasterizer.cpp index f69c0c50f..67b88621a 100644 --- a/src/video_core/renderer_vulkan/vk_rasterizer.cpp +++ b/src/video_core/renderer_vulkan/vk_rasterizer.cpp | |||
| @@ -213,7 +213,7 @@ void RasterizerVulkan::Draw(bool is_indexed, u32 instance_count) { | |||
| 213 | EndTransformFeedback(); | 213 | EndTransformFeedback(); |
| 214 | } | 214 | } |
| 215 | 215 | ||
| 216 | void RasterizerVulkan::Clear() { | 216 | void RasterizerVulkan::Clear(u32 layer_count) { |
| 217 | MICROPROFILE_SCOPE(Vulkan_Clearing); | 217 | MICROPROFILE_SCOPE(Vulkan_Clearing); |
| 218 | 218 | ||
| 219 | if (!maxwell3d->ShouldExecute()) { | 219 | if (!maxwell3d->ShouldExecute()) { |
| @@ -256,7 +256,7 @@ void RasterizerVulkan::Clear() { | |||
| 256 | .rect = regs.clear_control.use_scissor ? GetScissorState(regs, 0, up_scale, down_shift) | 256 | .rect = regs.clear_control.use_scissor ? GetScissorState(regs, 0, up_scale, down_shift) |
| 257 | : default_scissor, | 257 | : default_scissor, |
| 258 | .baseArrayLayer = regs.clear_surface.layer, | 258 | .baseArrayLayer = regs.clear_surface.layer, |
| 259 | .layerCount = 1, | 259 | .layerCount = layer_count, |
| 260 | }; | 260 | }; |
| 261 | if (clear_rect.rect.extent.width == 0 || clear_rect.rect.extent.height == 0) { | 261 | if (clear_rect.rect.extent.width == 0 || clear_rect.rect.extent.height == 0) { |
| 262 | return; | 262 | return; |
diff --git a/src/video_core/renderer_vulkan/vk_rasterizer.h b/src/video_core/renderer_vulkan/vk_rasterizer.h index b0bc306f5..70f36d58a 100644 --- a/src/video_core/renderer_vulkan/vk_rasterizer.h +++ b/src/video_core/renderer_vulkan/vk_rasterizer.h | |||
| @@ -65,7 +65,7 @@ public: | |||
| 65 | ~RasterizerVulkan() override; | 65 | ~RasterizerVulkan() override; |
| 66 | 66 | ||
| 67 | void Draw(bool is_indexed, u32 instance_count) override; | 67 | void Draw(bool is_indexed, u32 instance_count) override; |
| 68 | void Clear() override; | 68 | void Clear(u32 layer_count) override; |
| 69 | void DispatchCompute() override; | 69 | void DispatchCompute() override; |
| 70 | void ResetCounter(VideoCore::QueryType type) override; | 70 | void ResetCounter(VideoCore::QueryType type) override; |
| 71 | void Query(GPUVAddr gpu_addr, VideoCore::QueryType type, std::optional<u64> timestamp) override; | 71 | void Query(GPUVAddr gpu_addr, VideoCore::QueryType type, std::optional<u64> timestamp) override; |
diff --git a/src/video_core/renderer_vulkan/vk_scheduler.cpp b/src/video_core/renderer_vulkan/vk_scheduler.cpp index 7934f2a51..4a7b633b7 100644 --- a/src/video_core/renderer_vulkan/vk_scheduler.cpp +++ b/src/video_core/renderer_vulkan/vk_scheduler.cpp | |||
| @@ -221,6 +221,7 @@ void Scheduler::SubmitExecution(VkSemaphore signal_semaphore, VkSemaphore wait_s | |||
| 221 | [[fallthrough]]; | 221 | [[fallthrough]]; |
| 222 | default: | 222 | default: |
| 223 | vk::Check(result); | 223 | vk::Check(result); |
| 224 | break; | ||
| 224 | } | 225 | } |
| 225 | }); | 226 | }); |
| 226 | chunk->MarkSubmit(); | 227 | chunk->MarkSubmit(); |
diff --git a/src/video_core/renderer_vulkan/vk_texture_cache.cpp b/src/video_core/renderer_vulkan/vk_texture_cache.cpp index 853b80d8a..a65bbeb1c 100644 --- a/src/video_core/renderer_vulkan/vk_texture_cache.cpp +++ b/src/video_core/renderer_vulkan/vk_texture_cache.cpp | |||
| @@ -108,6 +108,7 @@ constexpr VkBorderColor ConvertBorderColor(const std::array<float, 4>& color) { | |||
| 108 | break; | 108 | break; |
| 109 | default: | 109 | default: |
| 110 | ASSERT_MSG(false, "Invalid surface type"); | 110 | ASSERT_MSG(false, "Invalid surface type"); |
| 111 | break; | ||
| 111 | } | 112 | } |
| 112 | } | 113 | } |
| 113 | if (info.storage) { | 114 | if (info.storage) { |