aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Graphics.OpenGL
diff options
context:
space:
mode:
Diffstat (limited to 'Ryujinx.Graphics.OpenGL')
-rw-r--r--Ryujinx.Graphics.OpenGL/HwCapabilities.cs13
-rw-r--r--Ryujinx.Graphics.OpenGL/Renderer.cs4
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)