Implement A2B10G10R10 TextureFormat (#248)
* add A2B10G10R10 TextureFormat * return correct PixelFormat & PixelType * return correct texture size * return correct Bytes Per Pixel
This commit is contained in:
parent
e07b0265c6
commit
ce96a45685
4 changed files with 4 additions and 0 deletions
|
@ -5,6 +5,7 @@ namespace Ryujinx.Graphics.Gal
|
||||||
R32G32B32A32 = 0x1,
|
R32G32B32A32 = 0x1,
|
||||||
R16G16B16A16 = 0x3,
|
R16G16B16A16 = 0x3,
|
||||||
A8B8G8R8 = 0x8,
|
A8B8G8R8 = 0x8,
|
||||||
|
A2B10G10R10 = 0x9,
|
||||||
R32 = 0xf,
|
R32 = 0xf,
|
||||||
BC6H_SF16 = 0x10,
|
BC6H_SF16 = 0x10,
|
||||||
BC6H_UF16 = 0x11,
|
BC6H_UF16 = 0x11,
|
||||||
|
|
|
@ -132,6 +132,7 @@ namespace Ryujinx.Graphics.Gal.OpenGL
|
||||||
case GalTextureFormat.R32G32B32A32: return (PixelFormat.Rgba, PixelType.Float);
|
case GalTextureFormat.R32G32B32A32: return (PixelFormat.Rgba, PixelType.Float);
|
||||||
case GalTextureFormat.R16G16B16A16: return (PixelFormat.Rgba, PixelType.HalfFloat);
|
case GalTextureFormat.R16G16B16A16: return (PixelFormat.Rgba, PixelType.HalfFloat);
|
||||||
case GalTextureFormat.A8B8G8R8: return (PixelFormat.Rgba, PixelType.UnsignedByte);
|
case GalTextureFormat.A8B8G8R8: return (PixelFormat.Rgba, PixelType.UnsignedByte);
|
||||||
|
case GalTextureFormat.A2B10G10R10: return (PixelFormat.Rgba, PixelType.UnsignedInt2101010Reversed);
|
||||||
case GalTextureFormat.R32: return (PixelFormat.Red, PixelType.Float);
|
case GalTextureFormat.R32: return (PixelFormat.Red, PixelType.Float);
|
||||||
case GalTextureFormat.A1B5G5R5: return (PixelFormat.Rgba, PixelType.UnsignedShort5551);
|
case GalTextureFormat.A1B5G5R5: return (PixelFormat.Rgba, PixelType.UnsignedShort5551);
|
||||||
case GalTextureFormat.B5G6R5: return (PixelFormat.Rgb, PixelType.UnsignedShort565);
|
case GalTextureFormat.B5G6R5: return (PixelFormat.Rgb, PixelType.UnsignedShort565);
|
||||||
|
|
|
@ -41,6 +41,7 @@ namespace Ryujinx.HLE.Gpu.Texture
|
||||||
return Texture.Width * Texture.Height * 8;
|
return Texture.Width * Texture.Height * 8;
|
||||||
|
|
||||||
case GalTextureFormat.A8B8G8R8:
|
case GalTextureFormat.A8B8G8R8:
|
||||||
|
case GalTextureFormat.A2B10G10R10:
|
||||||
case GalTextureFormat.R32:
|
case GalTextureFormat.R32:
|
||||||
case GalTextureFormat.ZF32:
|
case GalTextureFormat.ZF32:
|
||||||
case GalTextureFormat.BF10GF11RF11:
|
case GalTextureFormat.BF10GF11RF11:
|
||||||
|
|
|
@ -13,6 +13,7 @@ namespace Ryujinx.HLE.Gpu.Texture
|
||||||
case GalTextureFormat.R32G32B32A32: return Read16Bpp (Memory, Texture);
|
case GalTextureFormat.R32G32B32A32: return Read16Bpp (Memory, Texture);
|
||||||
case GalTextureFormat.R16G16B16A16: return Read8Bpp (Memory, Texture);
|
case GalTextureFormat.R16G16B16A16: return Read8Bpp (Memory, Texture);
|
||||||
case GalTextureFormat.A8B8G8R8: return Read4Bpp (Memory, Texture);
|
case GalTextureFormat.A8B8G8R8: return Read4Bpp (Memory, Texture);
|
||||||
|
case GalTextureFormat.A2B10G10R10: return Read4Bpp (Memory, Texture);
|
||||||
case GalTextureFormat.R32: return Read4Bpp (Memory, Texture);
|
case GalTextureFormat.R32: return Read4Bpp (Memory, Texture);
|
||||||
case GalTextureFormat.BF10GF11RF11: return Read4Bpp (Memory, Texture);
|
case GalTextureFormat.BF10GF11RF11: return Read4Bpp (Memory, Texture);
|
||||||
case GalTextureFormat.Z24S8: return Read4Bpp (Memory, Texture);
|
case GalTextureFormat.Z24S8: return Read4Bpp (Memory, Texture);
|
||||||
|
|
Loading…
Reference in a new issue