手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

unity大项目优化经验:模型的审查

时间:2024-10-16 16:02:36

1、在Project面板下建立文件夹Model,在Model文件夹下面建立文件夹Textures和Materials。工程所有的模型命名明确、辨识度高,全部导入到Model文件夹下。这样做的好处是,所有模型的贴图会在一个文件夹中,命名明确可防止重复贴图以及无效贴图占用项目空间,在大项目中,规范的做法会带来很多便宜。每次导入的模型产生的材质球会自动放入Materials文件夹中。笔者此次的项目,模型分十几次导入,最后成品项目花了整整一天的时候排查重复贴图和重复材质球。

unity大项目优化经验:模型的审查

2、材晨月鲈蜉质球的名字尽量与所用贴图名字相同。这点在贴图意外丢失或更换贴图时非常实用。另外当项目很大时,贴图的命名必定会根据功能模块、仪器模块或区域模块进行标头的区分,比如笔者的模型按照仪儡泌掩羞器模块区分,贴图命名的时候会以仪器名字的首字母作为标头,比如粗轧机的所有贴图都是XG_CZ_...;切割机的所有贴图都是XG_QG_...;XG为项目名字的缩写。在大项目中,贴图命名标头最好有明确的列表,以防止缩略名产生冲突。笔者此次的项目中有一个精轧机和矫直机,由于没有列表对比,两个模块的贴图都以XG_JZ_为标头,实际贴图完全不同,造成共用一个材质球,总是有一个模型的题图不正确,反反复复修改几次后才发现原来是贴图名字错误。

unity大项目优化经验:模型的审查

3、笔者 此次的项目整体轮廓是一个长方形,长750m,最宽的地方230m。由于场景过大资源过多,模型大都属于精模,Tris最大的时候高达45M,采用Occlusion Culling后,单视角Tris下降到20M以下,但效果依然很差,两个只有首尾相通的生产线,确在任意位置都可以看到对象生产线的大量厂房。

unity大项目优化经验:模型的审查
unity大项目优化经验:模型的审查

4、Occlusion Culling的剔除原则是,看的到一定渲染,看不到的也有可能渲染。这个房梁出现大量不应该看到的模型有两个重要原因(完全在项目开始的时候可以避免的原因):1.生产线2的模型穿过中间的墙壁显示在了生产线1中,这属于“看得到”的模型,即使使用Occlusion Culling,也照样完全渲染;2.房顶的结构是一个整体(单根房梁长100m),哪怕只看到一个角,照样全部渲染。

unity大项目优化经验:模型的审查

5、所以模型的长、宽、高不宜过大,虽然多分割一下模型会增加一些面数,但在遮挡剔除Occlusion Culling中可以省掉很多不必要渲染的面。 无论项目是大是小,新建一个空的工程用来检查美工发过来的模型是十分必要的,检查的内容有几点:1.模型是否过长、过宽、过大,适当分割模型;2.模型面数检查,如发现过大,与美工商议,查看是否可以减少面数,或做简模。3.需要重复复制的模型,比如房顶、房梁和房柱,分割情况是否适用实际使用中,比如房柱应作为独立物体分割开来,防止有些房柱会与地面器械发生冲突,删除房柱时将房梁一些不应该删除的模型一并删除。

unity大项目优化经验:模型的审查
unity大项目优化经验:模型的审查
unity大项目优化经验:模型的审查

6、隐藏区域的模型能省则省。为了节约资源,美工往往给我们一个模型后,由我们Ctrl+D出很多个模型,组成一个功能区,这个时候就要检查一下大面积重复模型中是否有在中间位置,根本不可能会被客户看到的地方,那么这个地方的模型就要删掉以节省渲染面数。需要删掉的这个模型就要提前分割。

unity大项目优化经验:模型的审查
unity大项目优化经验:模型的审查
© 手抄报圈