如果您的项目有额外的 IL2CPPUnity 开发的脚本后端,您可以在为某些平台构建项目时用它来替代 Mono。 更多信息
参见 术语表 参数设置,那么为多个平台编译可能无法按预期工作,尤其是在为 Linux 交叉编译时。
要找出是否已设置任何额外的 IL2CPP 参数,请执行以下操作之一
IL2CPP_ADDITIONAL_ARGS
是否已设置。ProjectSettings/ProjectSettings.asset
中,检查编辑器脚本是否具有名为 additionalIl2CppArgs
的值。请注意,设置额外 IL2CPP 参数的方法会全局应用于所有平台,如果为除目标平台以外的平台设置了这些参数,则会导致编译问题。使用 IPreprocessBuildWithReport
钩子(如下所示)以确保仅为需要它们的平台设置 IL2CPP 参数。
使用 IPreprocessBuildWithReport
钩子来构建 脚本一段代码,允许您创建自己的组件,触发游戏事件,随着时间推移修改组件属性,并以任何您喜欢的方式响应用户输入。 更多信息
参见 术语表 或构建对话框来设置额外参数
class MyCustomPreprocessBuild: IPreprocessBuildWithReport
{
public int callbackOrder { get { return 0; } }
public void OnPreprocessBuild(BuildReport report)
{
string addlArgs = "";
if (report.summary.platform == BuildTarget.StandaloneWindows || report.summary.platform == BuildTarget.StandaloneWindows64)
addlArgs = "--compiler-flags=\"d2ssa-cfg-jt\"";
UnityEngine.Debug.Log($"Setting Additional IL2CPP Args = \"{addlArgs}\" for platform {report.summary.platform}");
PlayerSettings.SetAdditionalIl2CppArgs(addlArgs);
}
}