/// <summary>
        /// Loads the given file specified by PackagePath and
        /// returns the serialized UnrealPackage.
        /// </summary>
        public static UnrealPackage LoadPackage(string packagePath, FileAccess fileAccess = FileAccess.Read)
        {
            var stream  = new UPackageStream(packagePath, FileMode.Open, fileAccess);
            var package = new UnrealPackage(stream);

            package.Deserialize(stream);
            return(package);
        }
示例#2
0
        public void Decompress(UPackageStream inStream, UPackageStream outStream)
        {
            inStream.Seek(CompressedOffset, System.IO.SeekOrigin.Begin);
            _Header.Deserialize(inStream);

            outStream.Seek(UncompressedOffset, System.IO.SeekOrigin.Begin);
            foreach (var buffer in _Header.Blocks.Select(block => block.Decompress()))
            {
                outStream.Write(buffer, 0, buffer.Length);
            }
        }