前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Unity性能调优手册11PlayerSettings:脚本运行环境,代码裁剪

Unity性能调优手册11PlayerSettings:脚本运行环境,代码裁剪

作者头像
立羽
发布2023-11-27 10:41:24
3120
发布2023-11-27 10:41:24
举报
文章被收录于专栏:Unity3d程序开发Unity3d程序开发

翻译自https://github.com/CyberAgentGameEntertainment/UnityPerformanceTuningBible/

PlayerSettings

脚本运行环境

Unity允许您在Mono和IL2CPP之间进行选择,作为Android和Standalone (Windows, macOS, Linux)等平台的脚本后端。我们建议选择IL2CPP,性能会有所提高。

在这里插入图片描述
在这里插入图片描述

此外,将脚本后端更改为IL2CPP也将更改c++可选择“Compiler Configuration 编译器配置”。

在这里插入图片描述
在这里插入图片描述

在这里,您可以在Debug、Release和Master之间进行选择,每一个都在构建时间和优化程度之间进行权衡,因此最好使用最适合您的构建目标的那个。

Debug

调试在运行时表现不佳,因为没有执行优化,但与其他设置相比,构建时间最短。

Release

优化提高了运行时性能,减少了构建的二进制文件的大小,但增加了构建时间。 手游项目使用的是Release

Master

平台可用的所有优化都已启用。例如,Windows构建将使用更积极的优化,如链接时间代码生成(LTCG)。 作为回报,构建时间将比发布设置更长,但Unity建议在可接受的情况下使用Master设置进行生产构建。

Strip Engine Code / Managed Stripping Level

Strip Engine Code剥离引擎代码是一个Unity功能,允许你设置托管剥离Level来自通过编译c#生成的CIL字节码,并且期望通过分别删除未使用的代码来减少构建的二进制文件的大小。 但是,由于确定是否使用给定代码非常依赖于代码中没有直接引用的类型,或者在反射中动态调用的代码,可能会被错误地删除。 在这种情况下,使用link.xml文件或指定Preserve属性。* 1 *1 https://docs.unity3d.com/2020.3/Documentation/Manual/ManagedCodeStripping.html 译者增加部分 对于lua调用C#,主要会被代码剪裁影响,这时你可以配置ReflectionUse(不要配LuaCallSharp),执行“Generate Code”,这时不会对该类生成封装代码,而是生成link.xml把该类配置为不剪裁。 手游项目中使用

在这里插入图片描述
在这里插入图片描述

Accelerometer Frequency (iOS)

这是一个ios特有的设置,允许你改变加速度计的采样频率。默认设置为60hz,请根据实际情况调整频率。如果您不使用加速度计,请确保禁用该设置。

在这里插入图片描述
在这里插入图片描述
本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023-11-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • PlayerSettings
  • 脚本运行环境
    • Debug
      • Release
        • Master
        • Strip Engine Code / Managed Stripping Level
        • Accelerometer Frequency (iOS)
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
        http://www.vxiaotou.com