diff options
| author | gdk <gab.dark.100@gmail.com> | 2019-11-22 14:17:06 -0300 |
|---|---|---|
| committer | Thog <thog@protonmail.com> | 2020-01-09 02:13:00 +0100 |
| commit | 79de8fd4904ec19318baceb999a7d1a84f686794 (patch) | |
| tree | 43ddaec0ae37aeadc7c33f6eaac856f07cfe44b9 | |
| parent | 2437ccca0e82b8b2a99d8632acf28ca0cc14c523 (diff) | |
Share texture pool cache between graphics and compute
| -rw-r--r-- | Ryujinx.Graphics.Gpu/Image/TextureBindingsManager.cs | 9 | ||||
| -rw-r--r-- | Ryujinx.Graphics.Gpu/Image/TextureManager.cs | 6 |
2 files changed, 8 insertions, 7 deletions
diff --git a/Ryujinx.Graphics.Gpu/Image/TextureBindingsManager.cs b/Ryujinx.Graphics.Gpu/Image/TextureBindingsManager.cs index 2d0e828e..74d7a76a 100644 --- a/Ryujinx.Graphics.Gpu/Image/TextureBindingsManager.cs +++ b/Ryujinx.Graphics.Gpu/Image/TextureBindingsManager.cs @@ -33,12 +33,11 @@ namespace Ryujinx.Graphics.Gpu.Image private bool _rebind; - public TextureBindingsManager(GpuContext context, bool isCompute) + public TextureBindingsManager(GpuContext context, TexturePoolCache texturePoolCache, bool isCompute) { - _context = context; - _isCompute = isCompute; - - _texturePoolCache = new TexturePoolCache(context); + _context = context; + _texturePoolCache = texturePoolCache; + _isCompute = isCompute; int stages = isCompute ? 1 : Constants.TotalShaderStages; diff --git a/Ryujinx.Graphics.Gpu/Image/TextureManager.cs b/Ryujinx.Graphics.Gpu/Image/TextureManager.cs index d4c161bd..045c2ed9 100644 --- a/Ryujinx.Graphics.Gpu/Image/TextureManager.cs +++ b/Ryujinx.Graphics.Gpu/Image/TextureManager.cs @@ -30,8 +30,10 @@ namespace Ryujinx.Graphics.Gpu.Image { _context = context; - _cpBindingsManager = new TextureBindingsManager(context, isCompute: true); - _gpBindingsManager = new TextureBindingsManager(context, isCompute: false); + TexturePoolCache texturePoolCache = new TexturePoolCache(context); + + _cpBindingsManager = new TextureBindingsManager(context, texturePoolCache, isCompute: true); + _gpBindingsManager = new TextureBindingsManager(context, texturePoolCache, isCompute: false); _rtColors = new Texture[Constants.TotalRenderTargets]; |
