public static byte[] GetBytePattern(MyChannel channel, Format format)
        {
            if (format == Format.Unknown)
            {
                return(null);
            }
            switch (channel)
            {
            case MyChannel.ColorMetal:
                if (format == Format.BC7_UNorm_SRgb ||
                    format == Format.BC7_UNorm)
                {
                    return(MyGeneratedTexturePatterns.ColorMetal_BC7_SRgb);
                }
                else
                {
                    break;
                }

            case MyChannel.NormalGloss:
                if (format == Format.BC7_UNorm)
                {
                    return(MyGeneratedTexturePatterns.NormalGloss_BC7);
                }
                else
                {
                    break;
                }

            case MyChannel.Extension:
                if (format == Format.BC7_UNorm_SRgb ||
                    format == Format.BC7_UNorm)
                {
                    return(MyGeneratedTexturePatterns.Extension_BC7_SRgb);
                }
                else
                {
                    break;
                }

            case MyChannel.Alphamask:
                if (format == Format.BC4_UNorm)
                {
                    return(MyGeneratedTexturePatterns.Alphamask_BC4);
                }
                else
                {
                    break;
                }

            default:
                break;
            }

            // No correct pattern is found, therefore we will use generated:
            int       texelBitSize = MyResourceUtils.GetTexelBitSize(format);
            const int bitsInByte   = 8;
            // Blocks are 4x4 texels in memory
            const int blockTexelCount = 16;
            int       blockBitCount   = texelBitSize * blockTexelCount;

            return(new byte[blockBitCount / bitsInByte]);
        }