向协作查看器(Collab Viewer)添加自己的内容

介绍如何将自己的模型添加到协作查看器(Collab Viewer)模板中。

Windows
MacOS
Linux

协作查看器(Collab Viewer)模板随附一些预设内容,便于用户立即使用此内容开始操作,请参阅快速入门 了解分步说明。熟悉协作查看流程后,您就会想希望试一试自己的内容。

本页介绍如何执行一些最常见的相关任务:

  • 在模板中加入自己的3D模型,进行设置使其与内置导航模式兼容。参阅使用自己的3D模型

  • 利用协作查看器(Collab Viewer)模板中的内置交互工具来控制内容的行为。参阅控制变换和X射线行为

  • 修改协作查看器(Collab Viewer)模板,不再从包含默认预设内容的关卡开始,而是从其他关卡开始。参阅更改初始关卡

使用自己的3D模型

协作查看器(Collab Viewer)模板随附一些预设内容,因此可立即使用此内容开始操作,但您可能需要替换成自己的模型,以便在相同的协作查看体验中使用自己的模型。

在此过程中需要牢记,玩家仅能传送到拥有碰撞网格体和导航网格体的表面并在上方行走。如果希望玩家能探索各个地板或表面,那么它们均须拥有相关的碰撞体积和导航网格体。

步骤

要在协作查看器(Collab Viewer)模板的默认关卡中使用自己的内容,需要执行以下概念步骤:

  1. 从此关卡移除3D模型、光源等现有内容,然后添加自己的内容。
    建筑、齿轮组件、树木等示例资源安放在一个名为 SampleLevel 的子关卡中。
    主固定关卡中的子关卡
    若要从零开始创建关卡,只需删除现有的这个子关卡,并将自己的内容放入主固定关卡(或新建的子关卡)即可。若要保留示例场景中的一些场景元素,如天空球体和光源,可以将此类项目移至主固定关卡。也可以选择并删除不再需要的项目,例如 世界大纲视图 中的 BuildingGearsTrees 文件夹。

  2. 在打包应用程序中放置并布置自己的内容,让其他人完全按照您所预想的方式来观看内容。

  3. 如果希望玩家可以传送到各个表面或在上方行走,则须对其设置碰撞网格体。
    您也许可以在创建几何体模型的3D设计应用程序中实现这一点。具体取决于内容导入的方式。另外,还可以在静态网格体编辑器中打开静态网格体并使用 碰撞(Collision) 菜单中的工具来执行此操作。

    若要自动进行碰撞设置,可参阅设置与静态网格体的碰撞在蓝图和Python中设置与静态网格体的碰撞

    也可以使用 阻挡体积 在关卡中添加不可见的盒形碰撞体积。这种方法可以在关卡中轻松实现碰撞,无需修改静态网格体。但由于此类体积没有附加到静态网格体,若要在关卡中移动几何体,则可能需要手动移动。

  4. 确保关卡中至少有一个 玩家出生点(Player Start) Actor。若需更多,可从 放置Actor(Place Actors) 面板的 基础(Basic) 选项卡中将更多 玩家出生点(Player Start) Actor拖入视口。

    新玩家加入会话时,其将从随机选择的 玩家出生点(Player Start) Actor所在的位置开始。关卡中至少应存在一个 玩家出生点 Actor,其位置应是合理的新玩家初始位置。最好将Actor放在可行走表面上,这样玩家切换到行走模式时便不会落到地面以下。

    最好在同一位置周围添加几个这种Actor,降低新玩家加入会话时与其他玩家的出生位置发生重叠的可能性。

  5. 如果希望玩家能传送到各个表面,则需要将其纳入一个导航网格体包围体,使其拥有导航网格体。默认固定关卡已有一个导航网格体(可调整大小使其覆盖3D模型),也可以自行创建。可酌情为关卡创建所需数量的体积。
    要创建导航网格体,请执行以下步骤:

    1. 若关卡尚无导航网格体边界体积,可从 放置Actor(Place Actors) 面板的 体积(Volumes) 选项卡将一个此类体积拖入视口。

    2. 在视口或 世界大纲视图 中选择导航网格体边界体积,并在视口中将变换小工具移至要覆盖区域的近似中心。

    3. 细节(Details) 面板中,利用 笔刷设置(Brush Settings) 更改体积大小和形状。

    4. 点击工具栏中的 构建(Build) 图标可重新构建关卡的预计算数据,也可以选择 构建(Build)> 导航(Navigation)> 构建路径(Build Paths),仅重新构建导航数据。

    5. P 查看生成的导航网格体,确保已覆盖所需区域。它被渲染为绿色表面,略高于与此体积相交的碰撞网格体。

  6. 必要时可以构建光照。

  7. 依照快速入门 页面的说明重新打包和发布项目。

最终结果

执行上述所有步骤之后,即可让多个用户接入同一设计查看会话,且大家都能看到您在关卡中添加的自定义内容。

控制变换和X射线行为

对内容进行各种设置即可影响运行时变换和X射线交互的行为。

  • 每个Actor的 移动性(Mobility) 设置将决定在运行时是否可以使用变换交互来移动对象。若要能在运行时移动对象,请将 移动性(Mobility) 设为 可移动(Movable)。若需要高亮显示并选择对象,但不能在空间中移动此对象,请将 移动性(Mobility) 设为 静态(Static)

  • 世界大纲视图 中的父和子Actor的层级能同时影响变换和X射线交互。

    • 在运行时利用变换交互移动对象时,此对象的所有子项会自动随父项移动,同时保持当前与父项的偏移量。

      举例而言,在本例中,变速器的各个部分均是 Transmission_Main_Part (中心黑条)的子项。

      范例内容父子层级

      因此在运行时移动黑条也会移动其子Actor。但仍可单独移动每个子Actor。下次移动父项时,子项将维持其新的偏移量。 

      将子Actor重设到原始位置将重置到与父Actor的原始偏移量,不会重置场景空间中的原始位置和旋转角度。将父Actor重置到原始位置会移动所有子项,保持与父项的当前偏移量。

    • 使用X射线隔离交互模式并在场景中选择了一个对象时,与所选对象处于同一层级的所有其他对象都将自动隐藏。

      举例而言,在默认场景内容下,构成变速器总成的所有对象均在层级中的一个顶层父项之下。因此,使用X射线隔离选择变速器的任意部分时,变速器的所有其他部分(即同一个顶层 齿轮(Gears) 项之下的所有子actor)将隐藏。构成建筑的所有Actor均位于层级中一个顶层 Building 项之下,因而它们不受影响。

      同理,若建筑的一部分使用X射线隔离(如下图地板),则建筑的所有其他部分都将变成透明,但变速器总成仍为不透明。

      在这两种情况下,因为树木和外部地形不在 GearsBuilding 层级之下,所以不受影响。

  • 对于希望能使用X射线或变换命令进行交互的Actor,必须关闭 模拟物理(Simulate Physics) 设置。可在 物理(Physics) 部分下的 细节(Details) 面板中找到此设置。

    禁用模拟物理

更改初始关卡

协作查看器(Collab Viewer)模板的主菜单被设为用户完成主菜单时加载 CollaborativeViewer_P 关卡。但您可能想要创建一个新的关卡来保存内容,并让主菜单初始启动您自己的关卡。若要如此,则需更改主菜单中的逻辑,以便其在用户加入会话时打开您的关卡。

步骤

要设置协作查看器(Collab Viewer)的初始关卡,请执行以下步骤:

  1. 内容浏览器 中,在 CollaborativeViewer/UMG/MainMenu 文件夹中找到 Widget_MainMenu 资源。

  2. 双击此资源将其打开,然后点击 图表(Graph) 以打开控件蓝图视图。

  3. 找到标记 提交用户选择(Commit user selections) 的组。在此组中,找到名为 开始创建会话(Begin hosting a session) 的子组。

  4. OpenLevel 节点上的 关卡名称(Level Name) 输入改为需要观看者在连接到会话时启动的关卡的名称。

  5. 编译保存 控件,然后重新打包项目。

最终结果

下次启动项目并设置完主菜单时,则会初始出现在上述步骤设置的自定义关卡中。

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback