Cloud Code
Cloud Code 是无服务器计算服务,允许您在云中编写和运行代码。您可以使用 Unity Cloud Code 在完全托管的基础架构上编写无状态的服务器端代码。Cloud Code 是一项完全托管的服务,可自动扩展以满足您的流量需求。您可以专注于游戏逻辑的开发,并将游戏逻辑与客户端隔离以防止作弊。
Cloud Code 与其他 Unity 服务(例如 Remote Config、Cloud Save、Economy 和 Leaderboards)完全兼容并可集成到一起。
通过将 Cloud Code 与其他 Unity 服务结合使用,可以创建完整的游戏后端,并可以部署游戏内经济、玩家数据存储和动态设置配置等解决方案,同时确保游戏逻辑安全。
Cloud Code C# 模块不能使用 UnityEngine
命名空间中的类或 [Unity 脚本 API] 中的任何其他内容。这是因为 Cloud Code 使用开源的 [.NET 运行时]。此运行时不同于 Unity Runtime,不依赖于其任何 [脚本后端]。
使用 Cloud Code 的解决方案
问题 | 解决方案 |
---|---|
您需要将代码部署到实时游戏,无需推出客户端更新来让玩家更新其安装。 | 使用 Cloud Code 更新游戏逻辑,无需玩家进行更新。 |
您希望确保恶意玩家无法更改客户端代码、更改其状态或作弊,可能还希望防止玩家对游戏逻辑进行逆向工程。 | 使用 Cloud Code 确保您的游戏逻辑在安全的沙盒中运行,并与客户端隔离。 |
您希望使用多个在线服务,不希望游戏体验出现卡顿,希望在与更多服务器端组件集成时能够在游戏客户端进行轻松编码。 | 利用 Cloud Code 与其他 Unity 服务集成,并编写绑定多个组件的代码。 |
您需要管理基础架构来运行游戏逻辑,并对其进行扩展以满足您的流量需求。 | 使用 Cloud Code 在完全托管的基础架构上编写无状态的服务器端代码。 |
当游戏没有收到流量时,您不想为未使用的资源付费。 | 使用 Cloud Code 确保您只需按实际使用量付费。 |
您需要一种解决方案来编写绑定多个组件的代码,而无需担心身份验证或兼容性。 | 使用 Cloud Code 编写具有内置兼容性并与其他 Unity 服务集成的代码。 |
将 Cloud Code 与模块和脚本结合使用
要从游戏中调用 Cloud Code,您可以使用集成的 Unity SDK,或者如果您需要在 Unity 编辑器外部工作,也可以使用 Cloud Code Client API。
Cloud Code 支持两种类型的代码:Cloud Code C# 模块和 Cloud Code JavaScript 脚本。
要选择符合您需求的方法,请查看以下列表。
Cloud Code C# 模块 | Cloud Code JavaScript 脚本 | |
---|---|---|
运行时 | .NET 7 | Node.js 14 |
语言 | C# | JavaScript |
部署 | 编辑器、命令行或 Admin API。 | 编辑器、[后台]、命令行或 Admin API。 |
运行中 | SDK 或 Runtime API。 | SDK 或 Runtime API。 |
外部库支持 | NuGet Package Manager 和公共互联网终端 | 公共互联网终端。 |
Cloud Code C# 模块不能使用 UnityEngine
命名空间中的类或 [Unity 脚本 API] 中的任何其他内容。这是因为 Cloud Code 使用开源的 [.NET 运行时]。此运行时不同于 Unity Runtime,不依赖于其任何 [脚本后端]。
Cloud Code 界面
您可以通过多种方法将您的应用程序与 Cloud Code 集成并管理您的应用程序:
界面 | 支持 | 描述 | 用法 |
---|---|---|---|
Cloud Code SDK | 脚本和模块。 | 用于将 Unity 项目与 Cloud Code 集成的软件开发工具包 (SDK)。 | 使用该 SDK 调用模块终端或从 Unity Runtime 调用脚本。 |
Unity Dashboard(Unity 后台) | 脚本和有限模块支持。 | 用于管理 Cloud Code 配置和设置的基于 Web 的界面。 | 创建、预览、测试运行脚本和预览模块。 |
Unity Gaming Services(Unity 游戏服务)命令行界面 | 脚本和模块。 | 用于管理 Cloud Code 配置和设置的命令行界面。 | 将 Cloud Code 集成到 CI/CD 中,并使用基于文件的工作流程进行迭代,以将 Cloud Code 与其他 Unity 服务一起部署。 |
Cloud Code Admin API | 脚本和模块。 | 用于管理 Cloud Code 脚本和模块的 REST API。 | 使用该 REST API 创建、读取、更新和删除 Cloud Code 脚本和模块。 |
Cloud Code Client API | 脚本和模块。 | 用于调用 Cloud Code 脚本和模块终端的 REST API。 | 通过 API 调用来调用 Cloud Code 脚本和模块,并与 Unity 编辑器外部的产品集成。 |
部署 | 脚本和模块。 | Unity 编辑器和 UGS CLI 的扩展。 | 使用部署方式通过文件(而不是 Unity Dashboard(Unity 后台))配置 Cloud Code。请将这些文件包含在版本控制中,并使用 Unity Dashboard(Unity 后台)尽可能减少后台上下文切换。 |
要了解如何部署和运行代码,请按照执行下一步部分中的选项之一操作。
执行下一步
Cloud Code C# 模块 使用类型安全 (type-safe) 的编程语言和功能强大的 .NET 组件编写服务器端代码。使用 NuGet 等工具捆绑动态链接库 (DLL),获取项目中需要的其他内容。 |
Cloud Code JavaScript 脚本 使用易于迭代的语言编写服务器端代码。如果您拥有 JavaScript 前端经验,可以利用相同的生态系统。通过 Cloud Code 命令行已支持的 CommonJS 和 ECMAScript 模块系统,将您的代码与可重用的代码段捆绑在一起。 |