aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Ryujinx.Graphics/Gal/OpenGL/OglTexture.cs18
1 files changed, 18 insertions, 0 deletions
diff --git a/Ryujinx.Graphics/Gal/OpenGL/OglTexture.cs b/Ryujinx.Graphics/Gal/OpenGL/OglTexture.cs
index f836702f..21edd89e 100644
--- a/Ryujinx.Graphics/Gal/OpenGL/OglTexture.cs
+++ b/Ryujinx.Graphics/Gal/OpenGL/OglTexture.cs
@@ -177,6 +177,24 @@ namespace Ryujinx.Graphics.Gal.OpenGL
data.Length,
data);
break;
+ case TextureTarget.TextureCubeMap:
+ Span<byte> array = new Span<byte>(data);
+
+ int faceSize = ImageUtils.GetSize(image) / 6;
+
+ for (int Face = 0; Face < 6; Face++)
+ {
+ GL.CompressedTexImage2D(
+ TextureTarget.TextureCubeMapPositiveX + Face,
+ level,
+ internalFmt,
+ image.Width,
+ image.Height,
+ border,
+ faceSize,
+ array.Slice(Face * faceSize, faceSize).ToArray());
+ }
+ break;
default:
throw new NotImplementedException($"Unsupported texture target type: {target}");
}