多室同步(动画、时间线和视频)

概述

使用网格,可以设置 单会议室或多会议室事件。 然后,在节目时间主持活动的共同组织者可以使用控制面板在所有会议室中以一致的方式触发视频、音频、可播放对象(时间线动画)和对象可见性。

单机室同步与多室同步

默认情况下,使用视觉脚本、云脚本、可交互或物理触发的任何场景更改(例如,按钮按下、头像触发器、抓取和移动对象)将独立于发生更改的聊天室。 即使共同组织者是采取该操作,也是如此。

若要跨多个会议室同步更改,共同组织者需要使用控制面板触发已添加到 Unity 环境中环境的可控制项。

可控制

网格工具包包括一些称为 控制组件的关键组件,用于标记 视频播放器PlayableDirectorAudioSource 或其他场景中的对象,以便事件主机可以在显示时间跨事件的所有会议室控制它。

网格 控制组件列表包括:

  • Unity 可播放可控制: 用于控制 Unity PlayableDirector (时间线、动画)

  • 嵌入式音频可控制:用于控制环境资产捆绑包中包含的 Unity AudioSource 播放音频

  • 嵌入式视频可控制: 用于控制环境资产捆绑包中包含的 Unity 视频播放器 播放视频

  • 流式传输的视频可控制: 用于控制从 URL 流式传输的 Unity 视频播放器 播放视频

  • 对象可控制:用于控制任何 Unity GameObject 的启用/禁用状态

以下部分介绍如何将可控制组件添加到 Unity 场景中的各种对象。 放置受控对象的每个对象将在控制面板的显示时间显示,供活动共同组织者控制。

控制事件中的时间线动画

在 Unity 中, 时间线 允许你对 Unity 场景中的动画、音频和其他内容进行排序。 时间线是一种 可播放对象,即可以播放、暂停、循环和停止的 Unity 对象。

通过在时间线或其他可播放对象旁边添加 Unity 可播放可控制控件,事件宿主可以在显示时间从控制面板控制它,从而跨多个会议室同步动画。

然后 ,托管活动的共同组织者可以选择播放 以启动动画, 暂停 动画,然后再次选择 播放 以恢复动画。 还可以选择“停止”将动画重置为开始或将动画设置为循环

在编辑模式下控制面板

例如,如果你有一个打开门的动画,选择 播放 按钮将在场景中打开门。 选择“停止会将动画重置回其原始位置。 可播放者不会反向进行动画处理;为此,需要创建其他动画。

如果你不熟悉 Timelines 在 Unity 中的工作方式,我们建议你观看有关日程表的 Unity 教程系列。

若要详细了解 Unity Playables API 的一般情况,请参阅 Unity 手册中的 Playables。

创建和控制网格的时间线

  1. 在层次结构,添加一个空的 GameObject,然后将其重命名为“时间线”。

  2. 添加另一个空的 GameObject,使其成为 Timelines 的子级,然后将其重命名为“Timeline1”。

    层次结构中的 Timeline1

    注意:

    • 对于正在处理的实际项目,建议将此 GameObject 命名为更具描述性的名称---例如, 1_Entrance_Doors。 对于此学习方案,我们将坚持名称“Timeline1”。

    • Playable 不会反向进行动画处理。 例如,假设你有一个打开门的动画。 选择“播放”按钮将在场景中打开门,选择“停止”按钮会将动画重置回其原始位置。 若要反向进行动画处理,需要创建其他动画。

      重要说明:单个 GameObject 上的多个时间线将 不起作用 ,并且会导致事件出现问题。

  3. “项目 ”选项卡中,导航到 “资产 ”文件夹,然后创建名为 Animations 的新文件夹。

  4. 在层次结构中,选择 Timeline1,然后选择“窗口>排序>时间线”。

    注意

    如果未看到时间线菜单项,请打开程序包管理器,然后在 Unity 注册表中搜索并安装“日程表”包。

  5. 建议将“日程表”选项卡移动到“项目”和“控制台”选项卡旁边 这样,就可以同时查看 时间线场景游戏 窗口。

    “时间线”选项卡

  6. 选择创建

    空时间线

  7. “保存”窗口中,将“播放对象”的名称更改为Open_Doors,然后将其保存到“资产>动画”文件夹中。

    “项目”面板,其中突出显示了“动画”文件夹

  8. 现在可以对日程表进行动画处理或自定义---例如,添加动画剪辑、激活剪辑等。 若要了解有关此内容的详细信息, 请参阅 Unity Learn 网站上的时间线教程

    具有多个曲目的时间线可能如下所示:

    时间线面板

  9. 完成动画处理后,在层次结构中选择 Timeline1 GameObject,然后在检查器导航到可播放的控制器组件。

  10. 在大多数情况下,需要选择以下设置:

    在唤醒 时播放 = 未选中

    上传时间线时将处于活动状态。

    包装模式 = 保留

    动画的最后一帧将无限期保留;否则,时间线将重置为开始时间线。 还有一个名为循环的包装模式选项,你可能希望在某些实例中使用。

    可播放控制器组件

  11. 最后,在检查器中,使用“添加组件”在与 Playable Director 相同的对象上添加 Unity 可播放的可控制组件。

    将此可控制的 Name Timeline1 命名,并将其 Director 属性设置为 此对象的 Playable Director 组件。

添加后,此时间线将显示在控制面板,用于使用此环境的事件和模板。 然后,主机可以在所有会议室中同步控制此时间线。

现在,可以使用网格工具包上传程序环境上传到网格,然后查看它在网格中的外观。 若要了解详细信息,请参阅使用控制面板准备内容。

控制事件中的视频播放器

可以使用 Unity 视频播放器完成由控制面板触发的同步视频播放。

  1. 首先需要在 Unity 场景中添加 视频播放器 组件。

    如果使用嵌入到环境中的视频,请将该视频分配给此组件。

  2. 然后,在检查器中,使用“添加组件”将嵌入式视频可控制组件或流式传输的视频可控制组件添加到同一对象。

    将此可控制的名称指定控制面板中要查看的名称,并将其视频播放器属性设置为此对象上的视频播放器组件。

    如果使用流式处理视频,请将可 控制的“默认 URL ”设置为要播放的 URL。

添加后,此视频将显示在控制面板中,用于使用此环境的事件和模板。 然后,主机可以在所有房间之间将其打开 /关闭播放/停止/查找 同步。

若要了解有关 Unity 视频播放器组件的详细信息,请参阅 Unity - 手动:视频播放器组件(unity3d.com)。

在网格中测试可控制的

若要尝试使用控制面板在实际事件中操作可控制项,首先需要将环境发布到网格。 有关上传环境的详细信息,请参阅 “生成并发布环境 ”。

上传环境后,可以自定义模板或事件以设置控制面板。 有关详细信息,请参阅使用控制面板准备内容。

将工作另存为模板

创建一个环境 + 控制面板组合后,你认为组织者将来可能想要重复,你可以将组合另存为模板。 若要了解有关模板的详细信息,请参阅 “创建事件模板”。