# 创建 UGS Asset Store 包

> Learn how to create packages for UGS assets and publish them to the Asset Store.

本指南介绍如何使用 Asset Store Tools 创建资源和包并发布到 Asset Store。然后，其他用户可以下载该资源并使用 [Deployment 包](https://docs.unity3d.com/Packages/com.unity.services.deployment@latest)将该资源部署到他们自己的项目中。

## 创建 UGS 资源##create-ugs-assets

创建需要包含在 Asset Store 包中的 UGS 资源。请参阅相应的文档以了解您可以创建的资源。支持以下服务：

* [Cloud Code](https://docs.unity3d.com/Packages/com.unity.services.cloudcode@latest/index.html?subfolder=/manual/Authoring/index.html)
* [Economy](/economy/write-configuration/unity-editor.md#authoring-within-unity-editor)
* [Multiplay Hosting](https://www.rocketscience.gg/multiplay/)
* [Leaderboards](/leaderboards/get-started.md#leaderboards-authoring)
* [Remote Config](https://docs.unity3d.com/Packages/com.unity.remote-config@latest/index.html?subfolder=/manual/Authoring/index.html)

## 安装 Asset Store Tools##install-asset-store-tools

安装 [Asset Store Tools](https://assetstore.unity.com/packages/tools/utilities/asset-store-publishing-tools-115) 后可从 Unity 编辑器上传您的包。请参阅[发布到 Asset Store](https://docs.unity3d.com/Manual/AssetStorePublishing.html) 以了解更多信息。

1. 打开 Unity 编辑器。
2. 在 [Asset Store Publishing Tools（Asset Store 发布工具）](https://assetstore.unity.com/packages/tools/utilities/asset-store-publishing-tools-115)页面中，选择 **Open in Unity（在 Unity 中打开）**。此时将在 Package Manager（包管理器）中打开 Asset Store Publishing Tools（Asset Store 发布工具）。要手动访问此工具，请执行以下操作：
   1. 在 Unity 编辑器中，打开 **Window（窗口）**> **Package Manager（包管理器）**。
   2. 在 Package Manager（包管理器）中，选择 **My Assets（我的资源）** 以打开 **Asset Store Publishing Tools（Asset Store 发布工具）**。
3. 选择 **Download（下载）**。
4. 选择 **Import**。此时将打开 Import Unity Package（导入 Unity 包）窗口。
5. 选择要导入的资源，然后选择 **Import（导入）**。

## 将包上传到 Asset Store##upload-package-to-the-asset-store

请参阅[创建新的资源包草案](https://docs.unity3d.com/Manual/AssetStoreCreatePkg.html)以了解如何将包上传到 Asset Store。

### 设置依赖项##set-your-dependencies

1. 打开 `Include Package Manifest` 切换开关。此时将打开一个包 UI。
2. 启用与您的包相关的必要服务包。

### 选择导出类型##choose-your-export-type

您可以直接从 Assets 文件夹上传您的包，也可以使用预先导出的 `.unitypackage` 文件进行上传。

要从 Assets 文件夹进行上传，请执行以下操作：

1. 将 `Upload type` 设置为 `From Assets Folder`。
2. 在 `Folder path` 行上选择 `Browse`。
3. 从弹出窗口中选择路径（必须在 `/Assets` 文件夹下）。
4. 选择 **Export and Upload（导出并上传）**。

要从 `.unitypackage` 进行上传，请执行以下操作：

1. 将 `Upload type` 设置为 `From Assets Folder`。
2. 在 `Folder path` 行上选择 `Browse`。
3. 从弹出窗口中选择路径（必须在 `/Assets` 文件夹下）。
4. 选择 **Export（导出）**。
5. 将 `Upload type` 更改为 `Pre-exported .unitypackage`。
6. 在 `Package path` 行上选择 `Browse`。
7. 选择刚刚导出的 `.unitypackage` 的路径。
8. 选择 **Upload（上传）**。

## 与具体服务相关的说明##service-specific-intructions

### Cloud Code 模块##cloud-code-modules

建议的最佳做法是将 Cloud Code 模块放在 `Assets` 文件夹之外，或放在隐藏文件夹（文件夹名称以 `~` 结尾，例如 `Module~`）中。要成功导出到 Asset Store，必须选择 Assets 文件夹内的隐藏路径。默认情况下不包括隐藏路径，因为不会为隐藏路径内的文件生成 `.meta` 文件。

要生成 `.meta` 文件并将隐藏文件夹的内容包含到 Asset Store 包中，请执行以下操作：

1. 在文件浏览器中打开模块位置。
2. 从文件夹名称中移除 `~`。
3. 选择您的 Unity 编辑器窗口并允许资源处理器完成。
4. 返回文件浏览器并将 `~` 添加回文件夹名称。
5. 删除您的文件夹中的 `.meta` 文件。否则会创建一个非隐藏的空文件夹。

现在，您的包已准备好连同包含的 Cloud Code 模块一起导出。

## Deployment（部署）窗口##deployment-window

Deployment（部署）窗口是 Deployment 包的一部分，提供了一个统一的界面来部署 UGS 资源。请参阅 [Deployment 包](https://docs.unity3d.com/Packages/com.unity.services.deployment@latest)以了解其使用方法。

[UGS 用例示例项目](/services/solutions/use-cases-project.md)中包含您可以使用 Deployment（部署）窗口部署的 UGS 资源。如需查看示例，请参阅 [A/B 测试](/services/solutions/ab-test.md#unity-cloud-services-configuration)。
