diff options
| author | gdkchan <gab.dark.100@gmail.com> | 2024-09-17 15:52:30 -0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-09-17 15:52:30 -0300 |
| commit | eb8132b627d3c0285dd199f4e40c6f3800bdb22d (patch) | |
| tree | 970a119909a0dd901bbd8cb5454b725a08e329b3 /src/Ryujinx.Graphics.GAL/Multithreading/Commands | |
| parent | ccf96bf5e673456ec80f72725e4c9afa4e4c5a85 (diff) | |
Change image format view handling to allow view incompatible formats (#7311)
* Allow creating texture aliases on texture pool
* Delete old image format override code
* New format incompatible alias
* Missing bounds check
* GetForBinding now takes FormatInfo
* Make FormatInfo struct more compact
Diffstat (limited to 'src/Ryujinx.Graphics.GAL/Multithreading/Commands')
| -rw-r--r-- | src/Ryujinx.Graphics.GAL/Multithreading/Commands/ImageArray/ImageArraySetFormatsCommand.cs | 26 | ||||
| -rw-r--r-- | src/Ryujinx.Graphics.GAL/Multithreading/Commands/SetImageCommand.cs | 6 |
2 files changed, 2 insertions, 30 deletions
diff --git a/src/Ryujinx.Graphics.GAL/Multithreading/Commands/ImageArray/ImageArraySetFormatsCommand.cs b/src/Ryujinx.Graphics.GAL/Multithreading/Commands/ImageArray/ImageArraySetFormatsCommand.cs deleted file mode 100644 index 8e3ba88a..00000000 --- a/src/Ryujinx.Graphics.GAL/Multithreading/Commands/ImageArray/ImageArraySetFormatsCommand.cs +++ /dev/null @@ -1,26 +0,0 @@ -using Ryujinx.Graphics.GAL.Multithreading.Model; -using Ryujinx.Graphics.GAL.Multithreading.Resources; - -namespace Ryujinx.Graphics.GAL.Multithreading.Commands.ImageArray -{ - struct ImageArraySetFormatsCommand : IGALCommand, IGALCommand<ImageArraySetFormatsCommand> - { - public readonly CommandType CommandType => CommandType.ImageArraySetFormats; - private TableRef<ThreadedImageArray> _imageArray; - private int _index; - private TableRef<Format[]> _imageFormats; - - public void Set(TableRef<ThreadedImageArray> imageArray, int index, TableRef<Format[]> imageFormats) - { - _imageArray = imageArray; - _index = index; - _imageFormats = imageFormats; - } - - public static void Run(ref ImageArraySetFormatsCommand command, ThreadedRenderer threaded, IRenderer renderer) - { - ThreadedImageArray imageArray = command._imageArray.Get(threaded); - imageArray.Base.SetFormats(command._index, command._imageFormats.Get(threaded)); - } - } -} diff --git a/src/Ryujinx.Graphics.GAL/Multithreading/Commands/SetImageCommand.cs b/src/Ryujinx.Graphics.GAL/Multithreading/Commands/SetImageCommand.cs index 243480a8..2ba9db52 100644 --- a/src/Ryujinx.Graphics.GAL/Multithreading/Commands/SetImageCommand.cs +++ b/src/Ryujinx.Graphics.GAL/Multithreading/Commands/SetImageCommand.cs @@ -10,19 +10,17 @@ namespace Ryujinx.Graphics.GAL.Multithreading.Commands private ShaderStage _stage; private int _binding; private TableRef<ITexture> _texture; - private Format _imageFormat; - public void Set(ShaderStage stage, int binding, TableRef<ITexture> texture, Format imageFormat) + public void Set(ShaderStage stage, int binding, TableRef<ITexture> texture) { _stage = stage; _binding = binding; _texture = texture; - _imageFormat = imageFormat; } public static void Run(ref SetImageCommand command, ThreadedRenderer threaded, IRenderer renderer) { - renderer.Pipeline.SetImage(command._stage, command._binding, command._texture.GetAs<ThreadedTexture>(threaded)?.Base, command._imageFormat); + renderer.Pipeline.SetImage(command._stage, command._binding, command._texture.GetAs<ThreadedTexture>(threaded)?.Base); } } } |
