包裹

*此内容使用人工智能(Beta)翻译,可能包含错误。若要查看英文页面,请点按 此处


要将资产组织起来并在团队或多个项目中重复使用,请将实例组合起来并将其转换为可重复使用的 。包裹使整个构建世界的过程更快、更舒适,但它们也有助于一致性、去重复、协作和版本控制:

最高效的工作流程是创建包分享给任何合作者,并将其设置为自动更新。而且,你不需要等待模型在包装中使用之前“完成”。即使包裹是简单形状的顶部占位符,你也可以使用它来灰箱你的环境,然后占位符复制在发布更详细版本时自动更新。

创建包装

您可以从任何单个对象或任何单个父辈和子分支对象创建包。如果您想为单个对象创建包,我们建议先将其添加到 Model 集群中,以便您稍后可以在包内添加、移除或扩展实例,而不会破坏包。

  1. 浏览器 窗口或 3D 视图中,右击所需对象,然后选择 转换为包装

  2. 在新窗口中,填写包裹详情。特别是,如果你在 组中工作,将 所有权 设置为你拥有创建/编辑组体验权限的适当组。

  3. 点击 提交

  4. 转换完成后,对象在 Explorer 窗口中收到一个“关联接”符号,用于识别它为包。此外,您可以看到一个新的 包裹链接 对象被添加到对象。

    A maple tree model in the Explorer window with the package icon next to it.
  5. (可选)选择 包裹链接 对象,并在 AutoUpdate 中启用 **** 。注意图标是如何更改以表明包已设置为自动更新。

    A maple tree model in the Explorer window with the auto-update package icon next to it.

插入包装

要插入尚未在当前场景置存在的包,您必须 首先工具箱 插入它:

  • 库存 > 我的包裹 对于你发布到或从 创作者商店 的包裹,以及朋友拥有并给予你 权限 使用的包裹。
  • 从创作(包括你自己)的成员发布的包裹中获取包裹的组包(包括你自己)。
A close up view of the Toolbox with both the Inventory tab and the assets dropdown menu highlighted.

工具箱 ⟩ 库存 ⟩ 我的包裹
>

A close up view of the Toolbox with the Creations tab highlighted.

工具箱 /> 创作 /> 群组包
>

一旦你将包裹插入到发布地场景的数据模型中,它就会出现在 资产管理器 中,即使之后你删除了所有副本,它仍然存在。

发布包裹更改

您可以将包裹中的任何更改发布为新版本,以便将它们提供给包裹的其他副本和所有体验。请注意,在发布位置之前发布修改的包不需要 (修改版本与位置一起保存以备未来循环使用)

要发布包装的更改:

  1. Explorer 窗口或 3D 视图中,右击修改后的副本,然后选择 发布到包装

  2. 如果包裹副本启用了自动更新,那么打开包含它们的地方时,它立即拉取更新版本。其他副本在包裹图标上获得白色点,表示可用更新。您可以单独更新批量更新它们根据需要。

    Two packages in the Explorer set to auto-update, and one with an update available.
  3. (可选) 添加您的更改描述:

    1. 右击包裹,然后选择 包裹详情
    2. 在资产配置窗口中,选择 版本
    3. 在你最新的更改下,选择 添加
    4. 描述您的更改并单击 提交

更新过期的副本

您可以将过期的包副本升级到最新版本,或者继续使用较旧版本。

要将一个或多个包副本升级到最新版本:

  1. 探索器 窗标志中,通过包裹图标上的白色点找到过期的副本。你还可以在 3D 视图中选择过期的副本,但可能更难找到这种方式。

    Two packages in the Explorer set to auto-update, and one with an update available.
  2. 右击过期的副本,然后选择 获取最新包 。您还可以选择多个包、右键单击,然后 获取选定包的最新版本

批量更新

广泛使用包可能会导致体验中的多个地点上的许多包副本。除了 个体同步自动更新 外,您还可以通过 批量更新 来更新包裹的所有副本。

  1. (推荐)关闭任何一个体验地点打开的其他 Studio 实例;这可以防止另一个未保存的地点实例可能覆盖你的更新。

  2. 浏览器 窗口或 3D 视图中,右击所需包裹,然后选择 更新所有

  3. 选择体验中的所有地点或一些地点子集,然后单击 更新

    A view of the mass update window, showing two places.

    为了防止意外覆盖,大批更新不会影响包裹的 修改 版本。大批更新完成后,Studio 会显示警告,其中包含未进行更新的包数量 ,如果有。

自动更新

为了让同步更轻松,您可以将包裹副本设置为自动更新,每次发布新版本时。当在工作室打开一个地点时,包装副本的自动更新将发生。

  1. 资源管理器 窗口中,扩展包的层次树并选择其 包链接 对象。

    A close up view of a packaged chandelier model in the Explorer window. The PackageLink object is highlighted.
  2. 属性 窗口中,启用 自动更新 属性。如果您有 嵌套包 ,此属性仅适用于最高级别的父包,即自动更新只会发生当父包 更新时。

分享和访问等级

如果需要,您可以与朋友共享包裹或向群组内的特定用户角色授予访问权限。

  1. 资源管理器 窗口中,单击 工具箱资产管理器 ,右键单击所需包并选择 包详情

  2. 资产配置 窗口中,选择 权限

    • 对于一个 集团拥有 包,扩展角色树。然后为每个角色选择权限级别。被禁用的选择框表示权限已为该角色配置 并且无法从此窗口更改

      A close up view of some settings in the pop-up window. The arrow icon next to the group icon and the member Edit dropdown menu are highlighted.
      权限描述
      编辑 角色的成员可以使用、查看和编辑当前和以前的包版本,包括发布更改到它。从此窗口向角色授予编辑访问只会授予访问 特定包
      无访问权限 角色的成员无法访问包的任何新版本,尽管他们保留对位场景插入的当前版本的访问权限。
    • 对于一个 用户拥有的 包,通过搜索字段搜索朋友,单击他们的用户名,然后选择权限等级别。

      权限描述
      使用和查看 用户可以使用和查看(但不能编辑)当前和以前的包版本。一旦你向用户提供这种能力,你无法撤销他们已经插入到他们体验中的副本的访问权限;撤销访问会防止重插或包装更新,但他们数据模型中的包装副本仍然完好无损。
      编辑 用户可以使用、查看和编辑当前和以前的包版本,包括发布更改到它。

修改包装

您可以像其他对象一样编辑包和其子对象。修改包会禁用自动更新,直到您发布或撤销更改为止。

The pop-up notice that you cannot update a modified package until you publish or revert your changes.

大多数编辑将包裹标记为已修改,尽管以下更改不被视为包裹修改:

  • 更改根节点的 名称
  • 改变包根节点的 位置旋转 ,如果包是 BasePartModelGuiObject
  • 改变根节点 启用 属性,例如 、 或 。
  • 更改包内引用包外实例的 Weld 零件参考。

一旦修改,未发布更改的包在 资源管理器 窗口中获得修改的图标:

The Explorer window with an icon that identifies unpublished package changes.

添加或更新配置

你可以在包裹的根目录中包含 实例属性 来自定义其行为,例如包装车的最大速度或包装按钮的缓冲时间。

当你发布包时,当前的属性/值组将成为包的默认配置 默认配置 。在任何包的复制上,配置都会显示在 粗体斜体 中,这些属性值可以在每个实例上进行更改。当包裹副本更新时,修改的配置值将被保留,其他属性将更新到最新默认值。

The Attributes section of the Properties window. Two properties are highlighted as having their default values while two other italicized properties are highlighted to show they have been configured.

嵌套包裹

您可以将包裹巢化在其他包裹中,以维护和协作复杂的层级,例如一系列车辆机械,可以独立于车辆的父包装进行修改。这个例子显示了包含四个相同轮子包的汽车包:

An expanded hierarchy in the Explorer window showing how packages can contain packages.

包装脚本

未修改 包内的每个脚本都是只读的,并在顶部显示一个超链接以解锁脚本。

A script tab with a yellow notification that you can click to modifiy the script that's within an unmodified package.

单击超链接:

  • 无论您编辑脚本还是否编辑脚本,都会标记包裹已修改。
  • 从包内的 其他 脚本中移除通知/超链接。

发布包并移至未修改状态后,包内的脚本将变为只读状态,并带有 hyperlink 进行修改。

撤销包裹更改

而不是一个接一个地撤销整个包裹更改系列,您可以在一个动作作中撤销未发布的更改,恢复包裹到以前的版本或恢复更改到特定的配置

撤销未发布的更改

要撤销整个系列的 未发布 更改:

  1. 探索器 窗口中,找到其名称旁边的问号所修改的副本。您还可以在 3D 视图中选择修改的副本,这可能更容易。

  2. 右击一个单个修改的副本,然后选择 撤销包裹更改 或选择多个副本(至少一个已修改),右击,然后选择 撤销选定的包裹更改

恢复到版本

要将包恢复到 以前发布的 版本:

  1. 资源管理器 窗口中,3D视图、 工具箱资产管理器 右键单击所需包并选择 包详情

  2. 资产配置 窗口中,选择 版本 。窗口显示每个发布版本的详细信息,包括发布日期和时间,以及任何更改的描述。

  3. 点击您想要恢复的版本旁边的复选标记,然后单击 提交

    The pop-up window for a chandelier asset. It displays multiple versions.

恢复配置

要将任何配置属性恢复到默认值,请在属性窗口的属性部分中选择重置选项从装备菜单。

The Attributes section of the Properties window. The gear menu is expanded and the Reset menu item is highlighted.

比较包裹版本

当包裹有多个版本时,您可以使用差异查看器来比较版本之间的更改,这对审查包更新、比较本地更改与最新版本以及恢复前版本内容有帮助。

该工具具有包裹层次菜单,该菜单指示所有在不同版本之间添加、删除或修改的实例,包括以下选项卡:

  • 视觉概览 显示在不同摄像头位置下 3D 渲染的视觉差异。它是用 3D 对象 (模型、零件) 作为根对象的包的默认视图,目前仅适用于根对象。

    An example of the Visual Overview tab in the diff viewer. One version of a building displays on the left-hand side, and another on the right-hand side.
  • 属性 显示属性和特性的更改。它是用于包含非 3D 对象(脚本、灯光、2D 对象)作为根对象的包的默认视图,并且可用于包中的所有实例。

    An example of the Properties tab in the diff viewer. Modified properties in different versions are highlighted.
  • 脚本 显示行脚本差异。无论脚本是根对象还是不是根对象,都可以用于包含脚本的包。

    An example of the Script tab in the diff viewer. Modified script lines in different versions are highlighted.

要比较包版本:

  1. 浏览器 窗口或 3D 视图中,右击目标包并选择 比较包版本

  2. 默认情况下,窗口会比较本地副本与最新版本之间的更改。使用两个下拉菜单来比较不同版本。

    A close up view of an example diff viewer. The compare settings are highlighted.
  3. 选择版本后:

    • 要比较根模型的视觉渲染,如果适用,请选择 视觉概览 标签并调整相机控制以达到所需的角度。控件在视图之间同步:

      • 使用左键单击镜头。
      • 使用右键单击旋转相机。
      • 使用鼠标轮缩放相机。
      • 使用快捷键 -F 重新中心化。
    • 要比较实例的属性和特性,请选择实例和 属性 选项卡。

    • 要比较脚本差异,如果适用,请选择任何脚本以打开 脚本 选项卡,用于选定版本之间的行间变更,类似于源控应用程序。

或者,您可以直接打开脚本差异工具:

  1. 浏览器 窗口或 3D 视图中,右击目标包,必须是脚本或包含脚本,然后选择 查看脚本更改
  2. 在打开的差异选项卡中,比较选定的脚本的所有更改与当前包复制和最新发布或本地版本之间。