1、资源复用姿势
错误复用:随便找了一下就有冗余加载案例:例如anling_house1与house2场景使用了Prefab_Prop_Carpet_02.prefab
Prefab_Prop_Carpet_02虽然被单独打包进入了house_1所属assetBundle包,但当house2需要使用时,必定会先加载house1资源包下的Carpet_02资源。这会拖慢加载速度的。
当然也存在冗余打包的情况,不在列举。(合理的冗余也是可以接受的)
正确复用姿势:
1、建立公共共享资源文件夹-分为全局共享和局部共享
全局共享:游戏启动后台预加载,永不卸载
局部共享:局部加载、卸载,例如anling_house1与house_2局部共享,进入居所开始加载,离开即可卸载
2、缩小共享使用范围
全局共享资源数越多,内存压力越大
模型纹理贴图一般不超过1024*1024,超过了说明模型做的太大了,不便于复用与扩展,需要拆分模型。
2、模型复用错误案例:
只导出一面墙在unity中缩放拼接会更好。一面墙模型41(原368/9)个顶点和28个三角面(原252/9)
模型复用官方案例:3D Learn: Complete Project
这些墙都是一个模型缩放拼接,唯一区别就是纹理分开制作麻烦点,纹理映射需要shader支持
优点:
1减少CPU计算模型顶点、三角面数据,加快CPU提交模型数据至GPU渲染
2减少模型体积,方便扩展修改
3方便资源打包管理
4方便其他场景复用,减少建模工作,增加拼接工作
缺点:
1美术同学要在建模软件构建原型,在unity二次拼接制作
2纹理分开导出