Unity 安装
本页只说明如何把 SDK 安装到 Unity 工程。安装完成后继续查看 Unity Quick Start。
- Windows 10 及以上
- Unity
2022.3 LTS - 已注册的
appId
选择安装方式
Section titled “选择安装方式”当前版本同时提供两种完整的离线载体,功能内容一致:
| 方式 | 适用情况 | 安装位置与升级语义 |
|---|---|---|
| Unity Package | 兼容现有项目和既有导包流程 | 导入到 Assets/IGP.UnitySDK*,重新导入是文件级覆盖 |
UPM .tgz | 新项目、希望按 package 管理和锁定版本 | 由 Package Manager 管理,并记录到 Packages/manifest.json 和 lock 文件 |
同一个模块只能选择一种方式。不要同时导入该模块的 .unitypackage 和 UPM 包。
四个公开模块中,所有项目先装 Core,再按需安装 Multiplayer、Compliance 和
GameKit。Core 根据当前 Unity 运行平台判断 Desktop 或 Mobile,随后只创建一个
Host Session runtime,无需用户配置平台。公开 Multiplayer 不提供初始化模式开关,只建立 RoomNode Game
数据面,并支持从 Core 请求 descriptor 或由调用方显式传入 descriptor。
使用 Unity Package
Section titled “使用 Unity Package”从 Release Notes 下载当前版本需要的文件:
cn.indiegp.sdk.unity-0.3.4.unitypackage- Core(必需)cn.indiegp.sdk.unity.multiplayer-0.3.4.unitypackage- Multiplayer(可选)cn.indiegp.sdk.unity.compliance-0.3.4.unitypackage- 实名认证与防沉迷(可选)cn.indiegp.sdk.unity.game-kit-0.3.4.unitypackage- GameKit / Leaderboard / Share(可选)
主包依赖 com.unity.nuget.newtonsoft-json;Multiplayer 还依赖 com.unity.ugui。如果工程尚未安装,请先通过 Package Manager 添加:
"com.unity.nuget.newtonsoft-json": "3.2.1",
"com.unity.ugui": "1.0.0"
然后在 Unity Editor 中执行 Assets > Import Package > Custom Package...,先导入 Core,再导入需要的可选模块,并确认全部 SDK 文件被选中。
使用离线 UPM tarball
Section titled “使用离线 UPM tarball”下载同一版本需要的 .tgz:
core-igp-0.3.4.tgz- Core(必需)multiplayer-igp-0.3.4.tgz- Multiplayer(可选)compliance-igp-0.3.4.tgz- 实名认证与防沉迷(可选)game-kit-igp-0.3.4.tgz- GameKit / Leaderboard / Share(可选)
对每个需要的包执行:
- 打开
Window > Package Manager。 - 点击左上角
+,选择Add package from tarball...。 - 先选择
core-igp-0.3.4.tgz,等待依赖解析和编译完成,再添加需要的可选模块。
短文件名只用于下载和本地存放;Package Manager 中仍显示稳定的 cn.indiegp.sdk.unity* 包 ID。不要修改 Unity 的 package cache。
团队或 CI 使用时,把 tarball 放在仓库内稳定路径,例如 LocalPackages/。Package Manager 会写入类似以下记录:
"cn.indiegp.sdk.unity": "file:../LocalPackages/core-igp-0.3.4.tgz"
提交 Packages/manifest.json、Packages/packages-lock.json 和引用到的 tarball,确保其他开发者与干净 CI 能解析相同路径。UPM 不会从本站自动下载缺失的本地 tarball。
从 Unity Package 迁移到 UPM
Section titled “从 Unity Package 迁移到 UPM”建议先在当前 SDK 版本内迁移,确认正常后再升级版本:
- 备份或移动项目自有的
IGPConfig、修改过的 sample 和自定义脚本。 - 记录当前安装的模块及版本。
- 删除对应旧目录:
Assets/IGP.UnitySDK、Assets/IGP.UnitySDK.Multiplayer、Assets/IGP.UnitySDK.Compliance、Assets/IGP.UnitySDK.GameKit。 - 通过 Package Manager 先安装同版本 Core tarball,再安装原来使用的可选模块。
- 恢复并显式绑定项目自有配置,检查 scene 和 Prefab 是否存在 Missing Script。
- Console 无重复类型或程序集错误后,再按需切换到更高 SDK 版本的 tarball。
SDK 不会扫描、移动或自动回填项目资源;删除旧目录和迁移自有内容必须由接入方显式完成。
更新与移除 UPM 包
Section titled “更新与移除 UPM 包”更新时,使用 Add package from tarball... 选择目标版本的同名模块,确认 manifest 和 lock 文件已指向新 tarball。已安装的公开模块应保持同一 SDK 版本。
移除时,在 Package Manager 选择可选模块并点击 Remove;Core 应在所有依赖它的可选模块移除后再删除。
- Unity Package:确认对应
Assets/IGP.UnitySDK*目录存在。 - UPM:确认 Package Manager 中出现对应
cn.indiegp.sdk.unity*包,且工程中没有同模块的旧Assets/IGP.UnitySDK*目录。 - Console 没有 SDK 编译、重复程序集或依赖解析错误。
- 已安装的公开模块版本一致,且两个 Multiplayer 包没有同时出现。
验证完成后继续 Unity Quick Start。
参见 Unity 官方文档:从本地 tarball 安装包 与 包依赖和解析。