diff options
Diffstat (limited to 'Ryujinx.Graphics.OpenGL')
| -rw-r--r-- | Ryujinx.Graphics.OpenGL/HwCapabilities.cs | 13 | ||||
| -rw-r--r-- | Ryujinx.Graphics.OpenGL/Renderer.cs | 4 |
2 files changed, 14 insertions, 3 deletions
diff --git a/Ryujinx.Graphics.OpenGL/HwCapabilities.cs b/Ryujinx.Graphics.OpenGL/HwCapabilities.cs index f958946e..70112a3a 100644 --- a/Ryujinx.Graphics.OpenGL/HwCapabilities.cs +++ b/Ryujinx.Graphics.OpenGL/HwCapabilities.cs @@ -5,9 +5,13 @@ namespace Ryujinx.Graphics.OpenGL { static class HwCapabilities { - private static Lazy<bool> _astcCompression = new Lazy<bool>(() => HasExtension("GL_KHR_texture_compression_astc_ldr")); + private static Lazy<bool> _supportsAstcCompression = new Lazy<bool>(() => HasExtension("GL_KHR_texture_compression_astc_ldr")); - public static bool SupportsAstcCompression => _astcCompression.Value; + private static Lazy<int> _storageBufferOffsetAlignment = new Lazy<int>(() => GetLimit(All.ShaderStorageBufferOffsetAlignment)); + + public static bool SupportsAstcCompression => _supportsAstcCompression.Value; + + public static int StorageBufferOffsetAlignment => _storageBufferOffsetAlignment.Value; private static bool HasExtension(string name) { @@ -23,5 +27,10 @@ namespace Ryujinx.Graphics.OpenGL return false; } + + private static int GetLimit(All name) + { + return GL.GetInteger((GetPName)name); + } } }
\ No newline at end of file diff --git a/Ryujinx.Graphics.OpenGL/Renderer.cs b/Ryujinx.Graphics.OpenGL/Renderer.cs index 1baee04b..c320d150 100644 --- a/Ryujinx.Graphics.OpenGL/Renderer.cs +++ b/Ryujinx.Graphics.OpenGL/Renderer.cs @@ -61,7 +61,9 @@ namespace Ryujinx.Graphics.OpenGL public Capabilities GetCapabilities() { - return new Capabilities(HwCapabilities.SupportsAstcCompression); + return new Capabilities( + HwCapabilities.SupportsAstcCompression, + HwCapabilities.StorageBufferOffsetAlignment); } public ulong GetCounter(CounterType type) |
