Unity常见的优化性能设置

Api Compatibility
Level使用较小的.Net库子集
Unity常见的优化性能设置
文章图片


  • level选择strip by byte code,选择micro mscorlib可能会导致crash,可以先不考虑;unity5中勾上strip
    Engine Code。可减少数M。
Unity常见的优化性能设置
文章图片

  • 定时Log性能的调试功能,非调试不要开启
Unity常见的优化性能设置
文章图片

  • 动态合并和静态合并打开,会合并mesh和材质排序,降低DC减少CPU占用率。PS:动态合并条件比较苛刻实时合并,静态合并载入的时候合并会增加Loading时间和一些内存。
Unity常见的优化性能设置
文章图片

  • Android下多线程渲染打开。只有Android提供了接口,在Unity优化技巧中有说过,实测打开多线程渲染大部分设备有10-20%的性能提升,但由于Android的碎片会会导致适配率和崩溃率有1%左右的下降。最理想的还是修改源码按机型适配。Unity常见的优化性能设置
    文章图片
  • IL2CPP打开,一方面将C#编译成C++提升性能,另一方面可以起到对代码加密的效果,不像C#反编译出来的代码可读性极高。
Unity常见的优化性能设置
文章图片

  • 配置优化:苹果如果希望支持32位和64位,在Architecture里选择Universal。然后再XCode工程里勾ByteCode,苹果会做优化自动分成32位和64位的包,iphone5开始支持64位。
Unity常见的优化性能设置
文章图片

  • 预编译Shader,避免在游戏运行中实时编译Shader导致的卡顿。Shader中很多条件宏在build的时候被Unity自动strip掉了,因为build的场景和资源里不包含shader的一些variant而被Unity自动去掉。在GraphicsSettings里添加Always Included Shaders。但是不能添加Standard可能会内存爆炸。
【Unity常见的优化性能设置】Unity常见的优化性能设置
文章图片

    推荐阅读