Initial texture replacement implementation

Unmerged PR #5632, originally by @gdkchan

* Add mod manager support - @KeatonTheBot

* Remove redundant code - @KeatonTheBot

* Optimize, modernize code to newer C# standards where appropriate - @KeatonTheBot

Co-authored-by: KeatonTheBot <keaton@ryujinx.app>
This commit is contained in:
gdkchan
2025-12-19 17:49:02 -06:00
committed by KeatonTheBot
co-authored by KeatonTheBot
parent d00bda7e53
commit 812cecd713
27 changed files with 3505 additions and 67 deletions
@@ -141,6 +141,15 @@ namespace Ryujinx.Ava.UI.ViewModels
{
Mods.Add(new ModModel(mod.Path.FullName, mod.Name, mod.Enabled, inSd));
}
foreach (var mod in modCache.TextureDirs)
{
var modModel = new ModModel(mod.Path.Parent?.FullName, mod.Name, mod.Enabled, inSd);
if (Mods.All(x => x.Path != mod.Path.Parent?.FullName))
{
Mods.Add(modModel);
}
}
}
Sort();
@@ -295,6 +295,11 @@ namespace Ryujinx.Ava.UI.ViewModels
}
}
public string TextureDumpPath { get; set; }
public int TextureDumpFormatIndex { get; set; }
public bool EnableTextureDump { get; set; }
public bool EnableTextureRealTimeEditing { get; set; }
public int Language { get; set; }
public int Region { get; set; }
public int FsGlobalAccessLogMode { get; set; }
@@ -652,6 +657,10 @@ namespace Ryujinx.Ava.UI.ViewModels
AspectRatio = (int)config.Graphics.AspectRatio.Value;
GraphicsBackendMultithreadingIndex = (int)config.Graphics.BackendThreading.Value;
ShaderDumpPath = config.Graphics.ShadersDumpPath;
TextureDumpPath = config.Graphics.TexturesDumpPath.Value;
TextureDumpFormatIndex = (int)config.Graphics.TexturesDumpFileFormat.Value;
EnableTextureDump = config.Graphics.EnableTextureDump.Value;
EnableTextureRealTimeEditing = config.Graphics.EnableTextureRealTimeEdit.Value;
AntiAliasingEffect = (int)config.Graphics.AntiAliasing.Value;
ScalingFilter = (int)config.Graphics.ScalingFilter.Value;
ScalingFilterLevel = config.Graphics.ScalingFilterLevel.Value;
@@ -777,6 +786,10 @@ namespace Ryujinx.Ava.UI.ViewModels
config.Graphics.BackendThreading.Value = (BackendThreading)GraphicsBackendMultithreadingIndex;
config.Graphics.ShadersDumpPath.Value = ShaderDumpPath;
config.Graphics.TexturesDumpPath.Value = TextureDumpPath;
config.Graphics.TexturesDumpFileFormat.Value = (TextureFileFormat)TextureDumpFormatIndex;
config.Graphics.EnableTextureDump.Value = EnableTextureDump;
config.Graphics.EnableTextureRealTimeEdit.Value = EnableTextureRealTimeEditing;
// Audio
AudioBackend audioBackend = (AudioBackend)AudioBackend;