diff options
| author | HorrorTroll <sonicvipduc@gmail.com> | 2020-03-25 04:54:09 +0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-03-24 22:54:09 +0100 |
| commit | 17200214dfbd60ba075f106e558d4f563a1bbe98 (patch) | |
| tree | 209bcf914b940f602358dde5de028566c3dac828 | |
| parent | 1de16f7653b1c5ef1c780fe8840c9c5819c08a3d (diff) | |
Add GPU name in status bar (#984)
* Add GPU name in status bar
* Fixed like Ac_K suggest
* Nit.
* Minor fix
* Minor change.
* Nit.
* Fixed for ATI vendor
* Minor fix, again...
| -rw-r--r-- | Ryujinx.Graphics.OpenGL/Renderer.cs | 14 | ||||
| -rw-r--r-- | Ryujinx/Ui/GLRenderer.cs | 9 | ||||
| -rw-r--r-- | Ryujinx/Ui/MainWindow.cs | 2 | ||||
| -rw-r--r-- | Ryujinx/Ui/MainWindow.glade | 29 | ||||
| -rw-r--r-- | Ryujinx/Ui/StatusUpdatedEventArgs.cs | 4 |
5 files changed, 50 insertions, 8 deletions
diff --git a/Ryujinx.Graphics.OpenGL/Renderer.cs b/Ryujinx.Graphics.OpenGL/Renderer.cs index ccb53397..6ff3c36c 100644 --- a/Ryujinx.Graphics.OpenGL/Renderer.cs +++ b/Ryujinx.Graphics.OpenGL/Renderer.cs @@ -19,6 +19,12 @@ namespace Ryujinx.Graphics.OpenGL internal TextureCopy TextureCopy { get; } + public string GpuVendor { get; private set; } + + public string GpuRenderer { get; private set; } + + public string GpuVersion { get; private set; } + public Renderer() { _pipeline = new Pipeline(); @@ -78,11 +84,11 @@ namespace Ryujinx.Graphics.OpenGL private void PrintGpuInformation() { - string gpuVendor = GL.GetString(StringName.Vendor); - string gpuRenderer = GL.GetString(StringName.Renderer); - string gpuVersion = GL.GetString(StringName.Version); + GpuVendor = GL.GetString(StringName.Vendor); + GpuRenderer = GL.GetString(StringName.Renderer); + GpuVersion = GL.GetString(StringName.Version); - Logger.PrintInfo(LogClass.Gpu, $"{gpuVendor} {gpuRenderer} ({gpuVersion})"); + Logger.PrintInfo(LogClass.Gpu, $"{GpuVendor} {GpuRenderer} ({GpuVersion})"); } public void ResetCounter(CounterType type) diff --git a/Ryujinx/Ui/GLRenderer.cs b/Ryujinx/Ui/GLRenderer.cs index 5d0d1908..160608eb 100644 --- a/Ryujinx/Ui/GLRenderer.cs +++ b/Ryujinx/Ui/GLRenderer.cs @@ -335,10 +335,17 @@ namespace Ryujinx.Ui _device.Statistics.RecordSystemFrameTime(); + string gpuVendor = "Unknown"; + + if (_renderer.GpuVendor.ToLower().Contains("nvidia")) gpuVendor = "NVIDIA"; + if (_renderer.GpuVendor.ToLower().Contains("amd") || _renderer.GpuVendor.ToLower().Contains("ati")) gpuVendor = "AMD"; + if (_renderer.GpuVendor.ToLower().Contains("intel")) gpuVendor = "Intel"; + StatusUpdatedEvent?.Invoke(this, new StatusUpdatedEventArgs( _device.EnableDeviceVsync, $"Host: {_device.Statistics.GetSystemFrameRate():00.00} FPS", - $"Game: {_device.Statistics.GetGameFrameRate():00.00} FPS")); + $"Game: {_device.Statistics.GetGameFrameRate():00.00} FPS", + $"GPU: {gpuVendor}")); _device.System.SignalVsync(); diff --git a/Ryujinx/Ui/MainWindow.cs b/Ryujinx/Ui/MainWindow.cs index eaa0a7cd..f658bea4 100644 --- a/Ryujinx/Ui/MainWindow.cs +++ b/Ryujinx/Ui/MainWindow.cs @@ -71,6 +71,7 @@ namespace Ryujinx.Ui [GUI] TreeView _gameTable; [GUI] ScrolledWindow _gameTableWindow; [GUI] TreeSelection _gameTableSelection; + [GUI] Label _gpuName; [GUI] Label _progressLabel; [GUI] Label _firmwareVersionLabel; [GUI] LevelBar _progressBar; @@ -605,6 +606,7 @@ namespace Ryujinx.Ui { _hostStatus.Text = args.HostStatus; _gameStatus.Text = args.GameStatus; + _gpuName.Text = args.GpuName; if (args.VSyncEnabled) { diff --git a/Ryujinx/Ui/MainWindow.glade b/Ryujinx/Ui/MainWindow.glade index f8b39529..931cd2a5 100644 --- a/Ryujinx/Ui/MainWindow.glade +++ b/Ryujinx/Ui/MainWindow.glade @@ -475,7 +475,7 @@ <property name="visible">True</property> <property name="can_focus">False</property> <property name="halign">start</property> - <property name="margin_left">10</property> + <property name="margin_left">5</property> <property name="margin_right">5</property> <property name="label" translatable="yes">VSync</property> </object> @@ -527,13 +527,38 @@ <property name="can_focus">False</property> <property name="halign">start</property> <property name="margin_left">5</property> + <property name="margin_right">5</property> </object> <packing> - <property name="expand">True</property> + <property name="expand">False</property> <property name="fill">True</property> <property name="position">4</property> </packing> </child> + <child> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">5</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="_gpuName"> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="halign">start</property> + <property name="margin_left">5</property> + </object> + <packing> + <property name="expand">True</property> + <property name="fill">True</property> + <property name="position">6</property> + </packing> + </child> </object> <packing> <property name="expand">True</property> diff --git a/Ryujinx/Ui/StatusUpdatedEventArgs.cs b/Ryujinx/Ui/StatusUpdatedEventArgs.cs index 85093805..3d0cc300 100644 --- a/Ryujinx/Ui/StatusUpdatedEventArgs.cs +++ b/Ryujinx/Ui/StatusUpdatedEventArgs.cs @@ -7,12 +7,14 @@ namespace Ryujinx.Ui public bool VSyncEnabled; public string HostStatus; public string GameStatus; + public string GpuName; - public StatusUpdatedEventArgs(bool vSyncEnabled, string hostStatus, string gameStatus) + public StatusUpdatedEventArgs(bool vSyncEnabled, string hostStatus, string gameStatus, string gpuName) { VSyncEnabled = vSyncEnabled; HostStatus = hostStatus; GameStatus = gameStatus; + GpuName = gpuName; } } }
\ No newline at end of file |
