diff options
| author | gdkchan <gab.dark.100@gmail.com> | 2018-06-02 11:44:52 -0300 |
|---|---|---|
| committer | gdkchan <gab.dark.100@gmail.com> | 2018-06-02 11:44:52 -0300 |
| commit | 4731c7545d31900c44e25f40d6bbc1ad5e8cba66 (patch) | |
| tree | d8f971edc41183910db4231fb4c0b99e699595d3 /Ryujinx.Graphics/Gal/OpenGL | |
| parent | 7a6ce481844d40779f71d1706e3ba92f11137760 (diff) | |
Fix mistake on astc conversion, make some static methods that shouldn't be public private, remove old commmented out code
Diffstat (limited to 'Ryujinx.Graphics/Gal/OpenGL')
| -rw-r--r-- | Ryujinx.Graphics/Gal/OpenGL/OGLTexture.cs | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/Ryujinx.Graphics/Gal/OpenGL/OGLTexture.cs b/Ryujinx.Graphics/Gal/OpenGL/OGLTexture.cs index 75f09faa..46c15dcc 100644 --- a/Ryujinx.Graphics/Gal/OpenGL/OGLTexture.cs +++ b/Ryujinx.Graphics/Gal/OpenGL/OGLTexture.cs @@ -40,7 +40,7 @@ namespace Ryujinx.Graphics.Gal.OpenGL { if (Texture.Format >= GalTextureFormat.Astc2D4x4) { - ConvertAstcTextureToRgba(Texture); + Texture = ConvertAstcTextureToRgba(Texture); } const PixelInternalFormat InternalFmt = PixelInternalFormat.Rgba; @@ -70,14 +70,21 @@ namespace Ryujinx.Graphics.Gal.OpenGL GL.TexParameter(TextureTarget.Texture2D, TextureParameterName.TextureSwizzleA, SwizzleA); } - private void ConvertAstcTextureToRgba(GalTexture Texture) + private GalTexture ConvertAstcTextureToRgba(GalTexture Texture) { + int TextureBlockWidth = GetAstcBlockWidth(Texture.Format); + int TextureBlockHeight = GetAstcBlockWidth(Texture.Format); + Texture.Data = ASTCDecoder.DecodeToRGBA8888( Texture.Data, - GetAstcBlockWidth(Texture.Format), - GetAstcBlockHeight(Texture.Format), 1, + TextureBlockWidth, + TextureBlockHeight, 1, Texture.Width, Texture.Height, 1); + + Texture.Format = GalTextureFormat.A8B8G8R8; + + return Texture; } private int GetAstcBlockWidth(GalTextureFormat Format) |
