YooAsset
YooAsset copied to clipboard
unity3d resources management system
bundle数量2000+ 下载器遍历所有bundle需要同步访问文件系统导致卡顿较大 参考方案: 去除同步访问接口,在OnStart时使用wxFileSystem.Stat异步扫描缓存目录,并将已有缓存保存在HashSet中 同时下载缓存后也将结果保存到HashSet
突然RawFileBuildPipeline打包失败了。  
问题描述:安卓混合开发,主app辅助业务unity,主app是一个主进程,unity业务是单独unity开启了一个应用内进程,总共两个进程,使用的yooasset框架1.5.7的版本,偶现进入unity加载框架的时候,一直卡在请求最新远程版本中那里,退出重进unity,就又正常了。通过抓包发现出问题的时候,packageVersion的请求远程版本号的接口就没执行请求。如果把unity进程修改到主进程,一个进程,就不会复现这个问题,现在判断大概率是多进程引起的,但是unityPlayer建议多进程使用业务,所以这个问题暂时还没有头绪的
首先感谢作者能分享好用的YooAssets! 我们在使用过程中,发现YooAssets内部有不少New的操作,比如内部逻辑中的Operation,AssetInfo等,还有就是对上层的各种Handle。 由于我们项目是大世界,加载量比较大, 虽然每次GC量不大,但是数量上来了GC还是有点影响。 以下只是我个人想法哈,对于高频创建的类统一做缓存池。 内部类都有它创建以及使用结束的时机,可以搞一个缓存,定点回收。 对上层的Handle类,可能需要在release的时候做一次,再保险一点就是加一个version字段,防止上层handle释放了但是还是取里面数据。
Yooasset版本:2.2.4-preview。Unity2021.3.14f1,平台WebGL,windows都测试遇到以下问题: void Start() { StartCoroutine(Run()); } IEnumerator Run() { // 初始化资源系统 YooAssets.Initialize(); // 创建默认的资源包 var package = YooAssets.CreatePackage("DefaultPackage"); // 设置该资源包为默认的资源包,可以使用YooAssets相关加载接口加载该资源包内容。 YooAssets.SetDefaultPackage(package); yield return InitPackage(package); yield return RequestPackageVersion(); yield return UpdatePackageManifest();...
按照弱联网环境解决方案的写法,获取本地版本号进行加载,UpdatePackageManifestAsync() 查看Error 显示的还是去请求网络文件。 YooAsset 版本:2.2.4-preview Unity 版本:2022.3.42f1c1   
根据tag下载:CreateResourceDownloaderByTags 求解:有没有对应上面的根据tag来卸载资源的接口呀?
加载原生文件入dll.bytes文件 ,打包时也选择了RawFileBuildPipeline提示Try load AssetBundle file using load raw file method !