コード例 #1
0
ファイル: BFLIM.cs プロジェクト: cano159/Switch-Toolbox
        private TEX_FORMAT GetFormat(BFLIMFormat format)
        {
            switch (format)
            {
            case BFLIMFormat.L8_UNORM:
            case BFLIMFormat.A8:
                return(TEX_FORMAT.A8_UNORM);

            case BFLIMFormat.LA4:
                return(TEX_FORMAT.B4G4R4A4_UNORM);

            case BFLIMFormat.LA8:
            case BFLIMFormat.HILO8:
                return(TEX_FORMAT.R8G8_UNORM);

            case BFLIMFormat.RGB565:
                return(TEX_FORMAT.B5G6R5_UNORM);

            case BFLIMFormat.RGBX8:
            case BFLIMFormat.RGBA8:
                return(TEX_FORMAT.R8G8B8A8_UNORM);

            case BFLIMFormat.RGBA8_SRGB:
                return(TEX_FORMAT.R8G8B8A8_UNORM_SRGB);

            case BFLIMFormat.RGB10A2_UNORM:
                return(TEX_FORMAT.R10G10B10A2_UNORM);

            case BFLIMFormat.RGB5A1:
                return(TEX_FORMAT.B5G5R5A1_UNORM);

            case BFLIMFormat.RGBA4:
                return(TEX_FORMAT.B4G4R4A4_UNORM);

            case BFLIMFormat.BC1_UNORM:
                return(TEX_FORMAT.BC1_UNORM);

            case BFLIMFormat.BC1_SRGB:
                return(TEX_FORMAT.BC1_UNORM_SRGB);

            case BFLIMFormat.BC2_UNORM:
                return(TEX_FORMAT.BC2_UNORM_SRGB);

            case BFLIMFormat.BC3_UNORM:
                return(TEX_FORMAT.BC3_UNORM);

            case BFLIMFormat.BC3_SRGB:
                return(TEX_FORMAT.BC3_UNORM_SRGB);

            case BFLIMFormat.BC4L_UNORM:
            case BFLIMFormat.BC4A_UNORM:
                return(TEX_FORMAT.BC4_UNORM);

            case BFLIMFormat.BC5_UNORM:
                return(TEX_FORMAT.BC5_UNORM);

            default:
                throw new Exception("Unsupported format " + format);
            }
        }
コード例 #2
0
ファイル: BFLIM.cs プロジェクト: cano159/Switch-Toolbox
 public void Read(FileReader reader)
 {
     reader.ReadSignature(4, "imag");
     Size        = reader.ReadUInt32();
     Width       = reader.ReadUInt16();
     Height      = reader.ReadUInt16();
     Alignment   = reader.ReadUInt16();
     BflimFormat = reader.ReadEnum <BFLIMFormat>(true);
     Swizzle     = reader.ReadByte();
 }