aboutsummaryrefslogtreecommitdiff
path: root/src/Ryujinx.Graphics.Vulkan/VulkanRenderer.cs
diff options
context:
space:
mode:
authorElijah <elitkramer@gmail.com>2024-01-25 16:07:20 -0800
committerGitHub <noreply@github.com>2024-01-26 01:07:20 +0100
commitd7ec4308b45d4ecb8d77cdc8d98ee618944292ed (patch)
tree7c14d1c74c6ed77f539c4d26fe3ab37b26858bb1 /src/Ryujinx.Graphics.Vulkan/VulkanRenderer.cs
parentfbdd390f902f5d37a3ae759de81076d925c014f9 (diff)
Use driver name instead of vendor name in the status bar for Vulkan. (#6146)1.1.1135
* Replace vendor id lookup with driver name * Create separate field for driver name, handle OpenGL * Document changes in VulkanPhysicalDevice.cs * Always display driver over vendor * Replace Vulkan 1.2 requirement with VK_KHR_driver_properties * Remove empty line * Remove redundant unsafe block * Apply suggestions from code review --------- Co-authored-by: Ac_K <Acoustik666@gmail.com>
Diffstat (limited to 'src/Ryujinx.Graphics.Vulkan/VulkanRenderer.cs')
-rw-r--r--src/Ryujinx.Graphics.Vulkan/VulkanRenderer.cs6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/Ryujinx.Graphics.Vulkan/VulkanRenderer.cs b/src/Ryujinx.Graphics.Vulkan/VulkanRenderer.cs
index 641ac844..48f05fa1 100644
--- a/src/Ryujinx.Graphics.Vulkan/VulkanRenderer.cs
+++ b/src/Ryujinx.Graphics.Vulkan/VulkanRenderer.cs
@@ -84,6 +84,7 @@ namespace Ryujinx.Graphics.Vulkan
internal bool IsTBDR { get; private set; }
internal bool IsSharedMemory { get; private set; }
public string GpuVendor { get; private set; }
+ public string GpuDriver { get; private set; }
public string GpuRenderer { get; private set; }
public string GpuVersion { get; private set; }
@@ -636,7 +637,7 @@ namespace Ryujinx.Graphics.Vulkan
public HardwareInfo GetHardwareInfo()
{
- return new HardwareInfo(GpuVendor, GpuRenderer);
+ return new HardwareInfo(GpuVendor, GpuRenderer, GpuDriver);
}
/// <summary>
@@ -693,6 +694,8 @@ namespace Ryujinx.Graphics.Vulkan
{
var properties = _physicalDevice.PhysicalDeviceProperties;
+ var hasDriverProperties = _physicalDevice.TryGetPhysicalDeviceDriverPropertiesKHR(Api, out var driverProperties);
+
string vendorName = VendorUtils.GetNameFromId(properties.VendorID);
Vendor = VendorUtils.FromId(properties.VendorID);
@@ -707,6 +710,7 @@ namespace Ryujinx.Graphics.Vulkan
Vendor == Vendor.ImgTec;
GpuVendor = vendorName;
+ GpuDriver = hasDriverProperties ? Marshal.PtrToStringAnsi((IntPtr)driverProperties.DriverName) : vendorName; // Fall back to vendor name if driver name isn't available.
GpuRenderer = Marshal.PtrToStringAnsi((IntPtr)properties.DeviceName);
GpuVersion = $"Vulkan v{ParseStandardVulkanVersion(properties.ApiVersion)}, Driver v{ParseDriverVersion(ref properties)}";