/// <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); }
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); } }