使用多人协作【未接入PanguCook】

简介

没有接入Pangu Cook的情况下,可以使用Pangu提交场景Actor和提交Content的资产,同时Pangu为项目准备了基于角色的提交权限控制流程,项目可以决定是否选用。

使用流程

场景Actor提交功能

场景Actor的提交入口按照用户使用习惯提供两个入口。

  1. Pangu界面内入口

    Pangu面板内点击Tile,Tile面板内通过Version Control选择Actor:

Actor Resmanager

系统会查询包围盒轴心点位于地块内的Actor并显示出来。

avatar

  1. Outliner右键菜单入口

在UE引擎的Outliner面版或者场景中点选需要管理的Actor,然后右键选择Open ResManager

OutlineResManager

系统会把选中的Actor在面版上展示

Right Click ResManager

Content资产提交功能

Content的资产提交入口在Content Brower窗口,右键想要提交的文件和文件夹,点击Open ResManager For Select Files。

  • 如果是文件夹:打开会展示文件夹所有的子文件夹和文件。
  • 如果是文件:只会展示文件,可以多选文件右键打开提交面板。

提交之前需要确保提交的文件处于被锁定的状态。

资产版本操作

资源展示面版下方展示了支持的操作按钮:

ResManagerAction

按钮的含义如下:

  • Submit:提交选中的文件至版本管理;
  • Update:更新选中的文件至版本管理最新;
  • Revert: 回退选中的文件至当前版本;
  • Update Directory:更新Actor文件夹;
  • Cleanup Directory: 清理刷新当前Actor文件夹的状态
  • Cancel:关闭面版

值得注意的是在点击Submit前,会对勾选的文件进行检查,检查文件的锁状态是否为本人持有,只有所有文件的锁都为本人持有时才可以允许提交,提交时会弹出面版,可以填写提交Log

submit

  1. Recent按钮:记录最近10条提交Log,以供快速选择
  2. 点击Ok按钮即可提交

另外,在点击提交面板的时候会自动提示保存,目的是保证场景中的效果为提交的效果。

注:执行完更新、清理、还原的操作,会执行Reload操作,热更版本管理带来的变化。

DataLayer分组

在场景中摆好三个模型,并分别创建 0 1 2三个Data Layer来存储场景Actor。

avatar

打开资源提交面板也会发现和场景内DataLayer信息一致的Tab窗口以及DataLayer内的Actor。

avatar

注:一个Actor可以同时有多个DataLayer属性,所以如果一个Actor同时有多个DataLayer属性,则相同的Actor会显示在不同的DataLayer标签页内。

PS:目前用户打开面板的时候会自动弹出保存的提示。提示保存是为了让场景的中的编辑效果得到管理,避免出现修改丢失的情况,目前会自动保存的时机有:

  • 打开多人协作

  • Update前

  • Revert前

  • CleanUp前

基于职能的提交权限控制(可选)

功能开启

在ProjectSettings->Cooperation分组,勾选Enable Strict Role Mode即可在本项目内开启提交权限控制

Role Mode

若一些场景希望覆盖项目级别的开启选项,可在场景WorldSettings->Cooperation分组中,勾选覆盖选项,并覆写是否开启提交权限控制

World Role Mode

  1. 是否覆盖项目设置开关
  2. (覆盖项目设置后)本场景是否开启提交权限控

角色录入

在ProjectSettings->Cooperation分组,提供了三个表格用于设置角色权限,这三个表格盘古提供默认模板,项目可二次修改或参考建立自己的表格。

Role Define

  1. 角色声明表格,声明场景中有哪些角色,如下所示

RoleDefineDetail

表格为UE的Enum类型,每一行代表一个角色的名称

  1. 人员角色设定,绑定项目组成员的角色

UserRoleDefineDetail

表格为UE的DataTable类型,每一行代表一行记录,每一列的含义如下:

列名含义例子
Row Name用户邮箱前缀zhangsan
UserRole用户角色,下拉菜单为上述角色声明表格中的内容Designer
Description备注场景策划

若项目成员未设定,该同学在登录后可自行选择自身的角色,已设定的成员在登录后也可以自行调整角色,可参考下述角色选择分节

  1. DataLayer权限表,设定DataLayer的提交权限,只有符合权限的用户才允许提交对应的Datalayer的内容

DataLayer

表格为UE的DataTable表格,每一行代表一脚赋予角色提交权限的记录,每一列的含义如下:

列名含义例子
Row Name记录名称Designer Layer
User Role用户角色,下拉菜单为上述角色声明表格中的内容Designer
DataLayerNames角色有权限提交的DataLayer名称, 数组类型可填写多个{Designer, Designer2}

与功能开启类似,可在场景WorldSettings->Cooperation分组中可以选择覆盖项目层级的设置,勾选上覆写的选项,即可用设定的表格管理该场景的权限

Role World Setting

如果项目选择重新建立上述三个表格,可将新表格填写下在以下选项中,若这些选项被填写,系统会优先读取

Rewrite

角色选择

功能开启后,可在盘古左上角点自己名字然后选择自己的职能。 avatar

提交权限控制

在使用多人协作功能提交UE Actor资产的时候,如上述使用流程的方式

可以看到按照DataLayer分类的Actor资产

DataLayer List

  1. DataLayer分组,目前有的DataLayer是Artist,Designer,PanguBgeo,PanguEdit
  2. All分页是所有DataLayer的总和

对这些资产进行提交时,系统会检查当前用户的是否有权限提交,如果没有会弹出警告提示并阻止提交行为 avatar