Version: 6000.3
语言: 中文
从命令行构建嵌入式 Linux
QNX的

部署嵌入式 Linux 项目

在嵌入式 Linux 播放器上,Unity 使用 SDL2 来处理键盘、鼠标和控制器输入,以与播放器窗口进行交互。根据使用的图形 API,它需要 SDL 动态加载libEGLlibGLESv2对于 OpenGL ES,或libvulkan对于用户空间的 Vulkan。

Wayland 的设置

尽管此设置假定您使用的是 Weston(参考 Wayland 服务器),但您可以对另一个合成器使用相同的设置,并稍作修改。

先决条件

这假设您正在运行一个 Wayland 合成器 (Weston),它将 Wayland 套接字导出到环境变量XDG_RUNTIME_DIR链接到。

在桌面 shell 上设置

若要在桌面 shell 上部署项目,请执行以下作:

  1. 验证环境变量XDG_RUNTIME_DIR设置为正确的目录。如果没有,则运行export XDG_RUNTIME_DIR=<dir>使用正确的目录 (/run/user/1000/是 Weston 安装的默认值)。
  2. 运行 Unity Player。

在 IVI shell 扩展上设置

您可以使用 IVI-shell 扩展部署您的项目,这是 Weston 的替代 shell 扩展。

  1. 设置 Unity Player 需要与环境变量一起使用的 IVI Surface IDUNITY_IVI_SURFACE_IDS.如果未设置此设置,则 Unity Player 使用 ID4711对于新创建的图面,向上(例如,Unity Display 1 将使用 4711,Unity Display 2 将使用 4712 等)。

  2. 注意:环境变量需要一个以逗号分隔的 ID 列表。例如export UNITY_IVI_SURFACE_IDS=100,200,300 uses ID 100对于 Unity Display 1,200用于 Unity Display 2 等。

  3. 如果仅使用单个显示输出,则单个 ID 就足够了。例如,导出UNITY_IVI_SURFACE_IDS=100.

  4. 验证环境变量XDG_RUNTIME_DIR设置为正确的目录。如果未设置此设置,请运行export XDG_RUNTIME_DIR=<dir>使用正确的目录 (/run/user/1000/是 Weston 安装的默认值)。

  5. 运行 Unity 播放器。

  6. 使用以下步骤为 Unity 设置 IVI 表面(例如westonfullscreen map表面)。

    1. 创建 IVI 层。

      LayerManagerControl create layer 0 <display-width> <display-height>

    2. 在屏幕上添加图层。

      LayerManagerControl set screen 0 render order 0

    3. 在图层上添加 Unity 播放器表面。

      LayerManagerControl set layer 0 render order <surface-id>

    4. 添加表面源区域。

      LayerManagerControl set surface <surface-id> source region 0 0 <display-width> <display-height>

    5. 添加表面目标区域。

      LayerManagerControl set surface <surface-id> destination region 0 0 <display-width> <display-height>

    6. 添加图层可见性。

      LayerManagerControl set layer 0 visibility 1

    7. 添加表面可见性。

      LayerManagerControl set surface <surface-id> visibility 1

Unity Player 出现在屏幕上。

其他信息

默认情况下,Unity 会创建与物理显示器大小相同的表面。如果要使用物理显示器以外的表面,例如将多个表面渲染到一个屏幕,请使用UNITY_IVI_EXPORT_DISPLAYS作为环境变量。

例如,使用export UNITY_IVI_EXPORT_DISPLAYS=1024x768@60,1920x1080@60Unity 对 Unity Display 1 使用表面大小 1024x768,对 Unity Display 2 使用 1920x1080 的表面大小。

您可以省略@60并使用export UNITY_IVI_EXPORT_DISPLAYS=1024x768,1920x1080因为@60自动假定。

其他资源

从命令行构建嵌入式 Linux
QNX的