binary | 包含 AssetBundle 数据的字节数组。 |
crc | 未压缩内容的可选 CRC-32 校验和。如果此项非零,则在加载内容之前,系统会将其与校验和进行比较,并且如果不匹配,则会发出错误。 |
AssetBundle 加载的 AssetBundle 对象,如果加载失败则为 null。
从内存区域同步加载一个 AssetBundle。
使用此方法可从字节数组加载 AssetBundle。在使用加密下载数据并需要从已加密字节加载 AssetBundle 时,此方法非常有用。
与 LoadFromMemoryAsync 相比,此版本是同步的,并且在完成创建 AssetBundle 对象之前不会返回。
using UnityEngine; using UnityEngine.Networking; using System.Collections;
public class ExampleClass : MonoBehaviour { byte[] MyDecrypt(byte[] binary) { // ...Perform some decryption process here to transform the input... return binary; }
IEnumerator Start() { var uwr = UnityWebRequest.Get("https://myserver/myBundle.unity3d"); yield return uwr.SendWebRequest(); byte[] decryptedBytes = MyDecrypt(uwr.downloadHandler.data); AssetBundle.LoadFromMemory(decryptedBytes); } }