批量创建资源

如何使用项目上传器示例批量创建资源。

阅读时间7分钟
上次更新4 个月前

项目上传器示例允许您轻松地从本地磁盘批量创建资源到资源管理器。此示例根据几个输入来批量创建资源,以匹配您的文件组织方式。

开始之前

在将资源从 Python SDK 上传到资源管理器之前,请确保您满足以下先决条件

  • 项目级别的资源管理器贡献者角色或组织所有者角色。有关角色的更多信息,请参阅 角色和权限
  • 一个用于上传资源的云项目。有关如何在 Unity 云上创建新项目的更多信息,请参阅 创建新项目
  • 如果您是授权组织(即拥有 Pro 或 Enterprise 许可证的组织)的一部分,则需要分配一个席位。有关更多信息,请参阅 重要 说明部分。
  • 最新版本的 Unity Cloud Python SDK,有关更多信息,请参阅 开始 使用 Python SDK。

运行示例

要运行示例,请按照以下步骤操作

  1. 安装轮文件,您可以按照 此处 的说明进行操作。
  2. 解压示例
    • 在终端中输入 pip show unity_cloud 以找到示例。
    • 将显示 SDK 的位置,类似于以下位置:/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages
    • 示例名为 Project upload,可以在 Unity Cloud SDK 的 samples 文件夹中找到。路径类似于以下路径 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/unity_cloud/samples/project_uploader
  3. 在 project_uploader 文件夹中,您可以找到并更新 config.json 文件,其中包含您的项目信息。
  4. 配置 config.json 文件。请参阅下面的“输入方法”和“参数”部分。
  5. 运行 project_uploader.py 脚本。资源已创建,您可以在仪表板上查看它们。

输入方法

以下是三种不同的批量创建资源方法

  • 资源方法:每个资源类型(如纹理、模型、脚本等)都有一个特定文件夹。
input strategy 2
  • 功能方法:每个游戏玩法概念(如角色、交互对象等)都有一个文件夹。
input strategy 1
  • Unity 包方法:从 Unity 编辑器将资源导出为包,并将它们的内容上传到资源管理器,同时保留依赖项。

参数

您可以配置以下参数

参数描述要求
assetsRootFolder
写入包含所有资源的 Unity 项目目录。在 Windows 上,使用反斜杠时需要使用另一个反斜杠进行转义,例如 C:\directory。在 Mac 上,单个斜杠 / 可以正常工作。必需
organizationId
标识包含项目的组织。必需
projectId
标识包含资源的项目。必需
strategy
指示输入方法的类型,是使用资源、功能还是 Unity 包。必需
filesCommonToEveryAssets
在 JSON 数组中列出所有将作为公共文件上传到每个资源的文件。例如,在整个项目中使用的材质或纹理。如果没有,您可以将数组留空或删除配置中的此条目。您不需要在此条目中列出元文件,因为 includeMetaFiles 配置会完成此操作。可选
assetFileExtensions

列出脚本需要查找并上传到资源的所有文件扩展名。将 meta 添加到此列表中,即使将 includeMetaFiles 设置为 False,也会自动将它设置为 True。您可以使用或不使用句点 '.' 来编写扩展名。例如,.fbx 或 fbx 的效果相同。留空表示包含目录中的所有文件。

可选
includeMetaFiles

当您将其设置为 True 时,脚本在上传任何文件时始终尝试找到 .meta 文件。它会影响公共文件和非公共文件。

可选
collectionToLinkAssetTo

当您将其设置为 True 时,这会将每个创建的资源添加到指定的集合。如果您不希望资源链接到集合,请删除此配置。

可选
tagsToApplyToAssets
这是一个 JSON 数组,其中包含要应用于创建的资源的所有标签的字符串。可选
assetNameCaseSensitive

当您将其设置为 True 时,脚本自动找到的每个文件的名称都需要使用完全相同的约定进行大写。任何差异都会导致创建不同的资源。此行为仅适用于资源方法策略。

可选
serviceAccount
它包含要用于登录的服务帐户的密钥 ID 和密钥。如果任何条目为空或您删除了 serviceAccount 条目,则脚本将使用个人登录。可选
publish

当您将其设置为 True 时,文件上传后资源将发布。

可选
metadataToApply
编写为有效的 JSON 对象或字典,元数据将应用于每个创建的资源。字段定义必须事先存在。可选
updateFiles

当您将其设置为 True 时,脚本会先删除云中资源中现有的文件,然后再上传本地文件。

可选