文章
18
标签
24
分类
10
首页
存档
标签
分类
其他人
关于我
lixiande的博客
unity拓展编辑器
返回首页
首页
存档
标签
分类
其他人
关于我
unity拓展编辑器
发表于
2024-02-05
|
更新于
2026-05-11
|
浏览量:
// TODO
文章作者:
Lixiande
文章链接:
https://lixiandea.github.io/2024/02/05/unity%E6%8B%93%E5%B1%95%E7%BC%96%E8%BE%91%E5%99%A8/
版权声明:
本博客所有文章除特别声明外,均采用
CC BY-NC-SA 4.0
许可协议。转载请注明来源
lixiande的博客
!
上一篇
Addressables优化catalog文件
unity使用Addressables进行资源管理很方便但是有一个很值得诟病的问题, 那就是catalog文件过大, 对于一个持续运营的项目来说catalog文件可能超过10M, 导致初始化Addressables时间较长, 峰值内存上涨明显. 本文通过分析catalog文件中主要的内容占用和内存开销, 提出一些可行的(已实践)方案. 一. catalog相关的开销分析catalog 开销主要来自两个部分: 初始化Addressables 的时间开销, 使用Addressables需要确保catalog 加载完成, 对于部分网络情况不佳的用户造成卡顿较长的体验; 加载catalog文件的内存开销, 使用json格式的Addressables加载时会产生两倍于自身大小的内存开销. 加载catalog的时间开销和网络情况密切相关, 实际测试下来一个1M的catalog文件经过传输和加载到内存, 整体时间超过1s. 主要的开销来源是文件的大小. 内存上的开销主要是加载文本本身和反序列化数据之后的结果上的内存开销. 1. catalog 本身大小开销分析catalog文件本身是一个...
下一篇
spine优化
项目背景项目使用unity做游戏,并使用addressables方案管理资源,基于spine作为很多unity的骨骼动画实现方案,在我们的项目中有一些不合理的地方: 使用ScriptableObject作为桥接SkeletonData和Unity的方案,导致skel文件在加载完成之后不会卸载,这导致Spine动画很多的情况下会导致很多的Native资源占用; Spine动画使用的地方很多,但是大部分时候只会播放一个动画; 为此我们实现了两个Spine方案上的改动: SkeletonData加载完成之后手动卸载skel.bytes文件; 按照动画名字拆分Spine文件中的动画,按需加载Spine动画文件; 下面是具体实现 spine资源卸载 该功能主要是针对skel文件加载完成之后不回收的问题 SkeletonDataAsset作为桥接Spine和Unity的承载类,主要是指定使用的Spine资源,这些资源直接使用unity的引用关系关联,加载SkeletonDataAsset的时候会自动将关联的资源加载进入内存,读取完成之后没有卸载对应的资源,导致部分TextAsset...
Lixiande
文章
18
标签
24
分类
10
Follow Me
公告
原神!启动!
最新文章
使用Claude Code + 火山方舟Coding Plan自动写Hexo博客
2026-05-11
26岁女房客读后感
2024-03-20
2023的思考
2024-03-04
unity设置maxSize减少图片内存开销
2024-02-22
coze使用体验
2024-02-22