SettingsGraphicsView.axaml 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218
  1. <UserControl
  2. x:Class="Ryujinx.Ava.UI.Views.Settings.SettingsGraphicsView"
  3. xmlns="https://github.com/avaloniaui"
  4. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  5. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  6. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  7. xmlns:ui="clr-namespace:FluentAvalonia.UI.Controls;assembly=FluentAvalonia"
  8. xmlns:locale="clr-namespace:Ryujinx.Ava.Common.Locale"
  9. xmlns:viewModels="clr-namespace:Ryujinx.Ava.UI.ViewModels"
  10. mc:Ignorable="d"
  11. x:CompileBindings="True"
  12. x:DataType="viewModels:SettingsViewModel">
  13. <Design.DataContext>
  14. <viewModels:SettingsViewModel />
  15. </Design.DataContext>
  16. <ScrollViewer
  17. Name="GraphicsPage"
  18. HorizontalAlignment="Stretch"
  19. VerticalAlignment="Stretch"
  20. HorizontalScrollBarVisibility="Disabled"
  21. VerticalScrollBarVisibility="Auto">
  22. <Border Classes="settings">
  23. <StackPanel
  24. Margin="10"
  25. HorizontalAlignment="Stretch"
  26. Orientation="Vertical"
  27. Spacing="10">
  28. <TextBlock Classes="h1" Text="{locale:Locale SettingsTabGraphicsAPI}" />
  29. <StackPanel Margin="10,0,0,0" Orientation="Vertical" Spacing="10">
  30. <StackPanel Orientation="Horizontal">
  31. <TextBlock VerticalAlignment="Center"
  32. ToolTip.Tip="{locale:Locale SettingsTabGraphicsBackendTooltip}"
  33. Text="{locale:Locale SettingsTabGraphicsBackend}"
  34. Width="250" />
  35. <ComboBox Width="350"
  36. HorizontalContentAlignment="Left"
  37. ToolTip.Tip="{locale:Locale SettingsTabGraphicsBackendTooltip}"
  38. SelectedIndex="{Binding GraphicsBackendIndex}">
  39. <ComboBoxItem IsVisible="{Binding IsVulkanAvailable}">
  40. <TextBlock Text="Vulkan" />
  41. </ComboBoxItem>
  42. <ComboBoxItem IsEnabled="{Binding IsOpenGLAvailable}">
  43. <TextBlock Text="OpenGL" />
  44. </ComboBoxItem>
  45. </ComboBox>
  46. </StackPanel>
  47. <StackPanel Orientation="Horizontal" IsVisible="{Binding IsVulkanSelected}">
  48. <TextBlock VerticalAlignment="Center"
  49. ToolTip.Tip="{locale:Locale SettingsTabGraphicsPreferredGpuTooltip}"
  50. Text="{locale:Locale SettingsTabGraphicsPreferredGpu}"
  51. Width="250" />
  52. <ComboBox Width="350"
  53. HorizontalContentAlignment="Left"
  54. ToolTip.Tip="{locale:Locale SettingsTabGraphicsPreferredGpuTooltip}"
  55. SelectedIndex="{Binding PreferredGpuIndex}"
  56. Items="{Binding AvailableGpus}"/>
  57. </StackPanel>
  58. </StackPanel>
  59. <Separator Height="1" />
  60. <TextBlock Classes="h1" Text="{locale:Locale SettingsTabGraphicsFeatures}" />
  61. <StackPanel Margin="10,0,0,0" Orientation="Vertical" Spacing="10">
  62. <StackPanel Orientation="Vertical">
  63. <CheckBox IsChecked="{Binding EnableShaderCache}"
  64. ToolTip.Tip="{locale:Locale ShaderCacheToggleTooltip}">
  65. <TextBlock Text="{locale:Locale SettingsTabGraphicsEnableShaderCache}" />
  66. </CheckBox>
  67. <CheckBox IsChecked="{Binding EnableTextureRecompression}"
  68. ToolTip.Tip="{locale:Locale SettingsEnableTextureRecompressionTooltip}">
  69. <TextBlock Text="{locale:Locale SettingsEnableTextureRecompression}" />
  70. </CheckBox>
  71. <CheckBox IsChecked="{Binding EnableMacroHLE}"
  72. ToolTip.Tip="{locale:Locale SettingsEnableMacroHLETooltip}">
  73. <TextBlock Text="{locale:Locale SettingsEnableMacroHLE}" />
  74. </CheckBox>
  75. </StackPanel>
  76. <StackPanel Orientation="Horizontal">
  77. <TextBlock VerticalAlignment="Center"
  78. ToolTip.Tip="{locale:Locale ResolutionScaleTooltip}"
  79. Text="{locale:Locale SettingsTabGraphicsResolutionScale}"
  80. Width="250" />
  81. <ComboBox SelectedIndex="{Binding ResolutionScale}"
  82. Width="350"
  83. HorizontalContentAlignment="Left"
  84. ToolTip.Tip="{locale:Locale ResolutionScaleTooltip}">
  85. <ComboBoxItem>
  86. <TextBlock Text="{locale:Locale SettingsTabGraphicsResolutionScaleCustom}" />
  87. </ComboBoxItem>
  88. <ComboBoxItem>
  89. <TextBlock Text="{locale:Locale SettingsTabGraphicsResolutionScaleNative}" />
  90. </ComboBoxItem>
  91. <ComboBoxItem>
  92. <TextBlock Text="{locale:Locale SettingsTabGraphicsResolutionScale2x}" />
  93. </ComboBoxItem>
  94. <ComboBoxItem>
  95. <TextBlock Text="{locale:Locale SettingsTabGraphicsResolutionScale3x}" />
  96. </ComboBoxItem>
  97. <ComboBoxItem>
  98. <TextBlock Text="{locale:Locale SettingsTabGraphicsResolutionScale4x}" />
  99. </ComboBoxItem>
  100. </ComboBox>
  101. <ui:NumberBox
  102. Margin="10,0,0,0"
  103. ToolTip.Tip="{locale:Locale ResolutionScaleEntryTooltip}"
  104. MinWidth="150"
  105. SmallChange="0.1"
  106. LargeChange="1"
  107. SimpleNumberFormat="F2"
  108. SpinButtonPlacementMode="Inline"
  109. IsVisible="{Binding IsCustomResolutionScaleActive}"
  110. Maximum="100"
  111. Minimum="0.1"
  112. Value="{Binding CustomResolutionScale}" />
  113. </StackPanel>
  114. <StackPanel Orientation="Horizontal">
  115. <TextBlock VerticalAlignment="Center"
  116. ToolTip.Tip="{locale:Locale AnisotropyTooltip}"
  117. Text="{locale:Locale SettingsTabGraphicsAnisotropicFiltering}"
  118. Width="250" />
  119. <ComboBox SelectedIndex="{Binding MaxAnisotropy}"
  120. Width="350"
  121. HorizontalContentAlignment="Left"
  122. ToolTip.Tip="{locale:Locale AnisotropyTooltip}">
  123. <ComboBoxItem>
  124. <TextBlock
  125. Text="{locale:Locale SettingsTabGraphicsAnisotropicFilteringAuto}" />
  126. </ComboBoxItem>
  127. <ComboBoxItem>
  128. <TextBlock Text="{locale:Locale SettingsTabGraphicsAnisotropicFiltering2x}" />
  129. </ComboBoxItem>
  130. <ComboBoxItem>
  131. <TextBlock Text="{locale:Locale SettingsTabGraphicsAnisotropicFiltering4x}" />
  132. </ComboBoxItem>
  133. <ComboBoxItem>
  134. <TextBlock Text="{locale:Locale SettingsTabGraphicsAnisotropicFiltering8x}" />
  135. </ComboBoxItem>
  136. <ComboBoxItem>
  137. <TextBlock
  138. Text="{locale:Locale SettingsTabGraphicsAnisotropicFiltering16x}" />
  139. </ComboBoxItem>
  140. </ComboBox>
  141. </StackPanel>
  142. <StackPanel Orientation="Horizontal">
  143. <TextBlock VerticalAlignment="Center"
  144. ToolTip.Tip="{locale:Locale AspectRatioTooltip}"
  145. Text="{locale:Locale SettingsTabGraphicsAspectRatio}"
  146. Width="250" />
  147. <ComboBox SelectedIndex="{Binding AspectRatio}"
  148. Width="350"
  149. HorizontalContentAlignment="Left"
  150. ToolTip.Tip="{locale:Locale AspectRatioTooltip}">
  151. <ComboBoxItem>
  152. <TextBlock Text="{locale:Locale SettingsTabGraphicsAspectRatio4x3}" />
  153. </ComboBoxItem>
  154. <ComboBoxItem>
  155. <TextBlock Text="{locale:Locale SettingsTabGraphicsAspectRatio16x9}" />
  156. </ComboBoxItem>
  157. <ComboBoxItem>
  158. <TextBlock Text="{locale:Locale SettingsTabGraphicsAspectRatio16x10}" />
  159. </ComboBoxItem>
  160. <ComboBoxItem>
  161. <TextBlock Text="{locale:Locale SettingsTabGraphicsAspectRatio21x9}" />
  162. </ComboBoxItem>
  163. <ComboBoxItem>
  164. <TextBlock Text="{locale:Locale SettingsTabGraphicsAspectRatio32x9}" />
  165. </ComboBoxItem>
  166. <ComboBoxItem>
  167. <TextBlock Text="{locale:Locale SettingsTabGraphicsAspectRatioStretch}" />
  168. </ComboBoxItem>
  169. </ComboBox>
  170. </StackPanel>
  171. </StackPanel>
  172. <StackPanel
  173. Margin="10,0,0,0"
  174. HorizontalAlignment="Stretch"
  175. Orientation="Vertical"
  176. Spacing="10">
  177. <StackPanel Orientation="Horizontal">
  178. <TextBlock VerticalAlignment="Center"
  179. ToolTip.Tip="{locale:Locale GraphicsBackendThreadingTooltip}"
  180. Text="{locale:Locale SettingsTabGraphicsBackendMultithreading}"
  181. Width="250" />
  182. <ComboBox Width="350"
  183. HorizontalContentAlignment="Left"
  184. ToolTip.Tip="{locale:Locale GalThreadingTooltip}"
  185. SelectedIndex="{Binding GraphicsBackendMultithreadingIndex}">
  186. <ComboBoxItem>
  187. <TextBlock Text="{locale:Locale CommonAuto}" />
  188. </ComboBoxItem>
  189. <ComboBoxItem>
  190. <TextBlock Text="{locale:Locale CommonOff}" />
  191. </ComboBoxItem>
  192. <ComboBoxItem>
  193. <TextBlock Text="{locale:Locale CommonOn}" />
  194. </ComboBoxItem>
  195. </ComboBox>
  196. </StackPanel>
  197. </StackPanel>
  198. <Separator Height="1" />
  199. <TextBlock Classes="h1" Text="{locale:Locale SettingsTabGraphicsDeveloperOptions}" />
  200. <StackPanel
  201. Margin="10,0,0,0"
  202. HorizontalAlignment="Stretch"
  203. Orientation="Vertical"
  204. Spacing="10">
  205. <StackPanel Orientation="Horizontal">
  206. <TextBlock VerticalAlignment="Center"
  207. ToolTip.Tip="{locale:Locale ShaderDumpPathTooltip}"
  208. Text="{locale:Locale SettingsTabGraphicsShaderDumpPath}"
  209. Width="250" />
  210. <TextBox Text="{Binding ShaderDumpPath}"
  211. Width="350"
  212. ToolTip.Tip="{locale:Locale ShaderDumpPathTooltip}" />
  213. </StackPanel>
  214. </StackPanel>
  215. </StackPanel>
  216. </Border>
  217. </ScrollViewer>
  218. </UserControl>