原创作品

Unity3D手游美术优化心得

Howe 发表于   2020-04-15 16:18:27
5734
4
46

本次简单分享Unity3D美术优化心得(释放内存和间接找到性能差的原因)

1.     资源的目录结构与命名规范

我认为这是非常基础也是非常重要的环节,良好的结构可大大加强研发效率,也为后期优化与热更打好基础。

将所有美术资源放入Assets下建立的Arts或者Res文件夹,Res文件夹下按照美术工种分为多个文件夹:UI(这里放界面所需资源icon立绘等),Character(角色),MapScenes(放关卡地图或场景),Fx(特效),Shader(着色器),Other(其他)等。

每个文件夹下还会有很多详细的子文件夹,例如特效文件夹Assets/Res/Fx/PrefabTexturemodelAnimationtimeline等。

image.png

资源本身也需清晰的命名,例如特效Prefab命名:Fx_saber(角色名或场景UI名)_Excalibur(技能名)_hit_01,这个就是亚瑟王契约胜利之剑技能的受击特效01,角色命名也是同理Character_saber

(命名可自行发挥,但主要目的是便于理解,一目了然为最佳)

2.     贴图

2.1游戏中释放技能发生卡顿或点开界面加载慢,可以检查下是否是贴图过大没有压缩(这里不聊代码效率的问题)ios推荐使用RGBA Compressed Pvrtc 4bits,安卓有透明通道的建议使用RGBA Compressed ETC2 8 bits

iOS

image.png

Android

image.png

(需提前安装)

image.png

2.2这里顺便提一下Shaderblend混合模式,因为blend模式会渲染通道比Add消耗内存,不需要透明的纹理或Add粒子使用的特效贴图可去掉alpha通道。

2.3贴图默认会勾选Generate Mip Maps,将其关闭可减少30%的空间。

image.png

2.4所有贴图大小尺寸为1:1,2的幂次方。尽量不要超过1024*1024,否则游戏安装之后、低端机直接崩溃、原因是手机系统版本低,超过1000的图集无法读取导致。

 

3.  模型和场景

3.1这里主要是顶点数和面数的控制,这里需要注意的是从3D软件中导出的FBX在导入Unity3D原本的模型会自动将所有面转换成三角面,这就是为什么在U3D中面数会增加的原因。

3.2清除不用的UV,不用的顶点色,法线切线U3D可自动生成根据需要设定,清除方式3Dmax工具菜单下的通道信息,英文为Tools/Channel Info...

image.png

3.3能附加到一起就附加到一起(attach),特别是场景可以降低大量的Draw Calls。

3.4游戏中摄像机看不到的面进行清理,使用的材质shader剔除背面的渲染。

 

4.  Shader

4.1这里简单说下,手游就把受光、投影、接受投影都关掉吧,或者减少计算光照模型。透明材质关掉深度写入ZwriteMode,模型合理使用单双面shader,场景和角色剔除背面的渲染。减少算法达到类似的效果,尽量不用复杂函数,可以把部分计算放到Vertex Shader。用少量Pass,每个pass都能使几何体渲染几次。

4.2如果shader在真机上效果显示不正确,检查一下only_renderers ,老机型可能需要降低一下target X.0,不然设置一个靠谱的Fallback吧。

4.3最后说下在Subshader 下加一行代码美术会来感谢你的。"PreviewType"="Plane"

 

5.  特效

可以优化的地方和方法,例如粒子合批降低DrawCalls以及用什么样的模型减少不必要的绘制Overdraw。就算满地图的特效只要Overdraw不要爆掉,任你撒粒子都能通过合批把DrawCalls降到很低,甚至地图内的场景特效降到个位数。后续如果有必要会根据这个专题展开写一个完整的文档。

 

6.  其他

骨骼个数也要限制,如果可以多角色共用骨骼,制作角色动画时注意轴向和单位的统一。不需要碰撞的模型关掉mesh collider,不需要动画的模型AnimationType选择None。

image.png

最后,关于优化性能是很重要,但是也不必追求极致的优化,在我看来优化远不及这个游戏是否好玩重要,盲目的借鉴千篇一律的内容枯燥的玩法才是比卡顿更致命的。暂时就想到这么多,如果有什么地方说的不对的欢迎指点帮助我改正。

 

 

 

 

 

 

 

 

 

 


没有标签
确定
评论(4)
128
大佬,救了我
回复
278天前
Uuuuu
特效优化很有必要出一版
回复
1381天前
XiAoe
大佬,后续超有必要的,期待!
回复
1451天前
希风
期待大佬的专题文章
回复
1451天前
没有更多啦~
  • 咨询
    客服
  • 扫码加入QQ群 或搜索QQ群号: 797421367
  • 扫码关注公众号 或微信搜索: cokey游戏特效