WWW.LoadFromCacheOrDownload(string url, Hash128 hash) 使用 hash128 但没有关于哈希的适当文档,如何使用它以及为什么这很重要?
它与保护上述函数中的 url 或其他内容有关吗?
WWW.LoadFromCacheOrDownload(string url, Hash128 hash) 使用 hash128 但没有关于哈希的适当文档,如何使用它以及为什么这很重要?
它与保护上述函数中的 url 或其他内容有关吗?
重点是(合理地)确保您没有缓存同一文件的不同版本。
当您第一次调用时LoadFromCacheOrDownload
,它会查看缓存,并查看您请求的 URL 之前没有下载过。当您第二次调用它时,除非同时清除缓存,否则您将避免下载并直接进入缓存。
当您发布游戏的新版本时,该文件仍(可能)在缓存中。如果文件在此期间发生了变化,你需要确保它会被再次下载——这就是version
目的;每次更新资源时,只需增加version
.
最后,crc
(或hash
)是一种确保缓存中的文件不损坏的方法。例如,用户可能手动更改了文件,或者文件可能因磁盘错误而损坏(比您想象的更常见)。Unity 将看到文件与哈希不匹配并重新下载。计算 CRC-32 散列并不难,您会发现很多工具可以帮您完成这项工作。