Unity3D项目优化心得随记

目前项目引擎更换为Unity2019.3.11f1,之后均以此版本为例。

一、三维资源

二、其余资源(待补充)

三、Unity优化(待补充)

一、三维资源
关于模型制作的一些规范和心得(持续补充随记)
1.模型制作规范,中心点规零,不能有多余的点线面,布线合理,尽量都以三角面和四边面为主。
2.模型能合并的尽量合并,需要根据实际情况自己把握一下合并的度,是否合理,以及需要思考模型在软件中所能提供的交互和动画。非常不建议全部模型合并为一个物体,导致模型体积过大,会影响到模型在Unity引擎中的后续操作,比如遮挡剔除等优化。
3.相同材质的贴图,相同材质的mesh,尽量统一归类以及合并物体。这样能大大减小Draw Calls。优化运行效率。但是缺点就是单个物体的面数及顶点数会大大增加,会增加CPU的运算,但是会减小显卡的渲染压力。根据实际情况来调节这个度。有的时候会碰见这样的问题,比如两个模型相隔距离很远,但是共用相同的材质贴图,相同的mesh,如果合并的话不太合理,而且会影响遮挡剔除。建议类似这种情况,可以将相近的同材质模型合并掉,远处的不合并。
4.尽量让模型合并材质和贴图,减少贴图和材质球数量,能有效减少性能消耗和资源文件占用。
5.大型场景,无论是户外场景还是室内场景,强烈建议将模型分层分组,方便程序后期统一进行分区管理,比如在看不到的区域隐藏区域组模型等等。
6.关于模型在引擎内的阴影问题 ,在引擎中,阴影是非常消耗性能的东西!所以如何解决好模型及场景的阴影问题,是三维资源优化性能的重要步骤。一般来说,项目中的模型分为静态和非静态,静态模型我们通常会在Unity引擎中统一静态烘焙掉,这将大大减少引擎实时计算的消耗。但是并非所有的静态模型都需要参与到烘焙中,多余的部分参与烘焙,会加大烘焙时候的运算,增加时间。比如场景中的透明类物体,玻璃啊,透明塑料管子啊等等,或者是一个极小的部件或者角落,有的时候也让这些模型参与烘焙,反而会适得其反,出现莫名其妙的阴影或者其他什么问题。与自己预想的效果不一致,需要自己酌情调整。非静态的模型,一般我们采用Unity中的Reflection Probe来模拟模型的反射,然后添加Light Probe Group来采样周围环境光照细节,模拟非静态物体与环境的融合。通常我会在Max中,在非静态物体下添加一个面片,作为假阴影的面片,然后导出模型与假阴影的面片到Substance Painter中烘焙一张AO图,将这张阴影图和面片的模型单独导入Unity,作为Shadow_XXX模型。需要注意的是,AO图并非是透明贴图,所以在Unity中需要将假阴影的材质球Shader更换为Particles/Standard Unlit,并在Rendering Mode中更改为Modulate模式,之后将Color mode更改为Multiply模式。
假阴影Shader设置

二、其余资源(待补充)
三、Unity优化(待补充)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值