工欲善其事必先利其器。在Unity官网的Asset Store上有不少给力的资源插件,能帮助我们减少人力资源消耗的同时,更快更好地驾驭引擎。今天我们就从善用资源的角度,推荐两款Unity热门插件,并介绍其使用技巧。


Mesh Baker

我们在项目开发的时候经常会大量使用大规模的Mesh,导致Draw Call过高。而Mesh Baker扮演了网格烘焙器的角色,其工作原理是将网格和材质合并,从而降低渲染的Draw Call。

下面,我们就来谈谈使用方法:

Texture Packing

我们常常会遇到角色网格相似,但是纹理繁杂细碎的情况。这时我们需要把纹理合并在同一张图上。纹理拼合的操作面板如下图所示:选择不同的网格来拼合,Texture Baker自动分析其Shader,Size等属性,最后点击Bake Material Into Combined Material,即可完成拼合。

Mesh Batching

在纹理拼合后已经形成为一张图片了,这时候我们需要进行Mesh拼合,即使用Mesh Baker来烘焙网格。在此,我们新建一个新的GameObject,点击Bake就把3个Mesh烘焙在一个Object上了。

同时,在进行了这两步之后,我们会发现Draw Call上的变化。

合并前

合并后

不难发现,合并前12个Draw Call,合并后只有2个,从而在一定程度上降低渲染压力。

对Skinned Mesh进行拼合

Unity引擎无法原生支持蒙皮网格的Draw Call Batching,而Mesh Baker能将多个Skinned mesh合并。

经过合并后,人物的材质已经相同,所以我们能在上图中看到这些角色只产生了一个Draw Call。同理,即使再加入更多的角色也能合并成非常少的Draw Call,从而减少渲染耗时。

除此之外, Mesh Baker还支持将Mesh Renderer与Skinned Mesh Renderer一起合并。比如开发中常用到的道具如帽子、剑等,使得角色在换装时也只产生一个Draw Call,非常实用。

在使用skinnedmesh时有几个注意点:

合并后将原始模型的Bone保持Active;
Disable原始模型的Skinned Mesh Renderer;
确保原始的Animation始终在运行;
如果需要Mesh Rendering与Skinned Mesh 一起合并,则需要保证在其在同一张Texture Atlas和Mesh容器中。

SimpleLOD

除了Mesh Baker,另一个插件SimpleLOD也比较适合大规模场景的制作开发。在处理多人在线的项目(如MMO游戏)时,按照我们以往的优化方法是尽可能降低Draw Call和减少渲染消耗,在远处使用低级LOD,在Run-time时根据相机距离切换合适的LOD,使得在手机性能有限的情况下尽量渲染更多的角色,达到更好的效果。

而SimpleLOD恰好可以满足这一点,除了同样拥有Mesh Baker所具有的Mesh合并、Atlas烘焙等功能,它还能提供Mesh的简化(Mesh Baker无法提供),并对动态蒙皮网格进行了很好的支持。该插件可在Run-time和Editor中都可以使用,同时开放了源码,大家可以根据项目的实际情况而作修改。

我们拿以下原始模型来举例:

合并模型

打开插件后有如下一些选项:点击Merge child meshes

我们知道Unity支持的网格顶点数不能超过65536,但是当我们把很多物体合成一个Mesh时很可能会超过这个限制。而这个插件会针对这种情况进行自动处理,可以看到下图中的两辆车Merge后成Merged part1和Merged part2 。

烘焙Atlas

下图是Texture packing,根据模型的Material自动把不同类型的Texture分类显示出来,在合并的时候,会自动把同类型的Texture合并。

合并之后的效果对比:Draw Call数量由原来的136降至24个。

模型简化

选择了模型之后,点击Simplify mesh,它会尽可能在保持原样的基础上简化网格。如下图,汽车模型的网格面片数从六万多顶点数减少到了两万七。

同时,它也能自动生成不同级别的LOD。这里有6层LOD(从大到小),点击Bake LOD后它会自动计算,不需要大家手动操作。我们可以通过更改脚本达到希望的效果。

如下就是使用了SimpleLOD后的效果。该插件最大的特色即是对Skinned mesh动画角色网格提供了很好的支持。

以上是我们今天推荐的插件,但愿能在资源优化中祝你一臂之力。今后我们将会结合以往的行业服务经验,为您推荐更多高效的开发利器,尽情关注!

转载于:https://www.cnblogs.com/lancidie/p/6258225.html

好插件让你事半功倍!【资源篇】相关推荐

  1. Sublime text 入门学习资源篇及其基本使用方法

    Sublime text 学习资源篇 史上最性感的编辑器-sublimetext,插件, 学习资源 官网 http://www.sublimetext.com/ 插件 https://packagec ...

  2. vue项目+富文本编辑器ueditor - 资源篇

    资源地址: git源码 · 解说地址 git源码:源码下载地址 · [基于 vue-cli 2.x 的完整 DEMO] ueditor插件Demo演示地址 说明: 支持 vue-cli 2.x 支持 ...

  3. (0001) iOS 开发之收集第三方资源篇

    1.欲先攻其事必先利其器 (第三方资源篇) http://www.cocoachina.com/ios/20160719/17078.html 2.最受欢迎的开源项目 http://www.csdn. ...

  4. AntDesignUI - V3.0 技术手册(资源篇)

    AntDesignUI - V3.0版本(资源篇) 技术文档: 官方网站:AntDesignUI - V3.0版本:组件预览 [英文版] 官方网站:AntDesignUI - V3.0版本:组件预览 ...

  5. stackedit:浏览器内的Markdowm编辑器(资源篇)

    文章目录 Stackedit:浏览器内的Markdowm编辑器(资源篇) 官方地址: 效果截图: Stackedit:浏览器内的Markdowm编辑器(资源篇) 官方直言: 使用Scroll Sync ...

  6. jpg , png 图片转SVG格式(资源篇)

    jpg , png 图片转SVG格式(资源篇) 在线工具: 在线转换工具 使用说明: 打开网站,打开文件上传,设置尺寸,直接转换,下载即可. 以上就是"jpg , png 图片转SVG格式( ...

  7. bootstrapV5+(资源篇)

    bootstrap V5+(资源篇) 官网 · 资源 官网 一.bootstrapV3.0 3.0 版本 3.0 字体图标 二.bootstrapV4.0 4.0 版本 4.0 字体图标 三.boot ...

  8. 在线颜色拾取器 - 资源篇

    在线颜色拾取器 - 资源篇 点击访问资源: 在线颜色拾取器 截图示下:

  9. nginx下部署vue项目概览 - (资源篇)

    相关博客: nginx下部署vue项目概览 这里使用的是百度云的服务器,CentOS7系统的 linux服务器用centos还是ubuntu系统_Linux nginx服务器搭建以及配置 nginx部 ...

  10. 免费解决vcruntime140.dll文件缺失 - 资源篇

    免费解决vcruntime140.dll文件缺失 - 资源篇 下载和安装教程: 下载:Microsoft 官方下载地址 安装:"免费解决msvcr110.dll文件缺失 - 资源篇" ...

最新文章

  1. RHEL5(CentOS)下nginx+php+mysql+tomcat+memchached配置全过程(转)
  2. MySQL 高可用架构 之 MHA (Centos 7.5 MySQL 5.7.18 MHA 0.58)
  3. NYOJ 801 Haffman编码
  4. 小程序如何传数组数据到vs后台中
  5. SpringSecurity Filter顺序
  6. 关于python中自己写的模块之前相互调用函数
  7. HLS视频点播直播初探
  8. memcached高速缓存学习笔记001---memcached介绍和安装以及基本使用
  9. 山西评计算机高级职称,山西专业技术职称评审不再统一组织外语和计算机能力考试...
  10. 7.性能之巅 洞悉系统、企业与云计算 --- 内存
  11. 赫尔默特方差分量估计Python
  12. 14-08-08 考核试题总结~
  13. 高中计算机教学设计案例分析,高一年级信息技术教学设计(案例)
  14. Tomcat中文乱码解决
  15. 失、思与诗-给那个在地坛里玩耍的孩子
  16. 第五章-系统的频域分析
  17. 怎样开始学做自媒体?怎么起步?
  18. linux中跳板机的部署
  19. Code jock的使用--皮肤
  20. 如何免费下载道客巴巴文档

热门文章

  1. kafka数据 落盘_Kafka架构原理?也就这么回事!
  2. 东华计算机学院常珊,常姗 - 东华大学 - 计算机科学与技术学院
  3. linux查看日志的几种命令,Linux查看日志三种命令(转载)
  4. 基于multisim的fm调制解调_矢量调制分析
  5. matlab安装教程补充
  6. 【 MATLAB 】使用 residuez 函数求 z 反变换的几个案例分析
  7. HttpPrinter与YunPrinter区别
  8. python3.x与python2.x的区别汇总
  9. linux基础命令 echo
  10. mac OS Sierra支持破解程序