Unity3D :处理 IL2CPP 附加参数的平台特定设置

推荐:将NSDT场景编辑器加入你的3D工具链
3D工具集:NSDT简石数字孪生

处理 IL2CPP 附加参数的平台特定设置

如果您的项目设置了其他 IL2CPP 参数,则针对多个平台进行编译可能无法按预期工作,尤其是在针对 Linux 进行交叉编译时。

若要确定是否已设置任何其他 IL2CPP 参数,请执行下列操作之一:

  • 检查环境变量是否已设置。IL2CPP_ADDITIONAL_ARGS
  • 在 中,检查编辑器脚本是否具有名为 的值。ProjectSettings/ProjectSettings.assetadditionalIl2CppArgs

请注意,用于设置其他 IL2CPP 参数的方法全局应用于所有平台,如果为所需平台以外的平台设置,则可能会导致编译问题。使用挂钩(如下所示)确保仅为需要它们的平台设置 IL2CPP 参数。IPreprocessBuildWithReport

IPreprocessBuildWithReport hook

使用挂钩生成脚本或使用“生成”对话框设置其他参数: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);
    }
}

3D建模学习工作室整理翻译,转载请注明出处!

上一篇:Unity3D :IL2CPP概述 (mvrlink.com)

下一篇:Unity3D :Linux IL2CPP 交叉编译器 (mvrlink.com)

NSDT场景编辑器 | NSDT 数字孪生 | GLTF在线编辑器 | 3D模型在线转换 | UnrealSynth虚幻合成数据生成器 | 3D模型自动纹理化工具
2023 power by nsdt©鄂ICP备2023000829号