Version: Unity 6.0 (6000.0)
语言 : 中文
QNX 构建配置文件参考
部署 QNX 项目

从命令行构建 QNX

要在命令行界面 (CLI) 上为 QNX 系统构建 Unity 项目,必须在构建主机上安装 Unity 编辑器。构建主机必须运行 Linux 操作系统,并安装有 QNX SDK。有关更多信息,请参阅安装 QNX 的 Unity 编辑器

以下示例使用可执行文件 (Unity) 的 Linux 变体,但您可以将其替换为首选构建主机操作系统的等效可执行文件。

命令行参数

资质要求

在使用命令行构建项目之前,请务必遵循以下说明:

要指示 Unity 在 CLI 模式下启动并在 QNX 的 <path-to-unity-project-root> 下构建项目,请运行以下命令:

Unity -quit -batchmode -nographics -buildTarget QNX -executeMethod Builder.Build -projectPath <path-to-unity-project-root>

构建过程还会调用函数 Builder.Build 以继续推进构建设置。

构建脚本

您可以将示例构建脚本添加到要从命令行构建的项目的 Assets/Editor/ 中。使用 -executeMethod 选项可调用该类的 Build() 方法,该方法可设置构建选项并触发构建。

多信息,请参阅 BuildPipeline.BuildPlayer 文档

using UnityEditor;
using UnityEditor.Build.Reporting;
using UnityEngine;

public class Builder
{
    private static void BuildQNX(QNXOsVersion qnxVersion, QNXArchitecture architecture)
    {
        // Set QNX version in BuildSettings
        EditorUserBuildSettings.selectedQnxOsVersion = qnxVersion;

        // Set architecture in BuildSettings
        EditorUserBuildSettings.selectedQnxArchitecture = architecture;

        // Setup build options (e.g. scenes, build output location)
        var options = new BuildPlayerOptions
        {
            // Change to scenes from your project
            scenes = new[]
            {
                "Assets/Scenes/SampleScene.unity",
            },
            // Change to location the output should go
            locationPathName = "../QNXPlayer/",
            options = BuildOptions.CleanBuildCache | BuildOptions.StrictMode,
            target = BuildTarget.QNX
        };

        var report = BuildPipeline.BuildPlayer(options);

        if (report.summary.result == BuildResult.Succeeded)
        {
            Debug.Log($"Build successful - Build written to {options.locationPathName}");
        }
        else if (report.summary.result == BuildResult.Failed)
        {
            Debug.LogError($"Build failed");
        }
    }

    // This function will be called from the build process
    public static void Build()
    {
        // Build QNX 7.1 ARM64 Unity player
        BuildQNX(QNXOsVersion.Neutrino71, QNXArchitecture.Arm64);
    }
}

其他资源

QNX 构建配置文件参考
部署 QNX 项目