Unity 多人游戏框架学习系列一
系列文章目录
unity知识点
文章目录
- 系列文章目录
- 前言
- 一、多人游戏概述
- 二、高级脚本 API
- 三、引擎和 Editor 集成
- 四、互联网服务
- 五、NetworkTransport 实时传输层
- 六、身份验证
- 七、示例项目
- 壁纸分享
- 总结
前言
博客将会介绍多人游戏学习。希望这篇博客对Unity的开发者有所帮助。
大家好,我是心疼你的一切,不定时更新Unity开发技巧,觉得有用记得一键三连哦。
欢迎点赞评论哦.下面就让我们进入正文吧 !
提示:以下是本篇文章正文内容,下面案例可供参考
一、多人游戏概述
网络功能有两种用户:
使用 Unity 制作多人游戏的用户。这些用户应从 NetworkManager 或高级 API 开始。
构建网络基础设施或高级多人游戏的用户。这些用户应从 NetworkTransport API 开始。
二、高级脚本 API
Unity 的网络功能有一个“高级”脚本 API(我们称之为 HLAPI)。使用此 API 意味着可以访问满足多用户游戏大多数常见要求的命令,而无需担心“较低级别”的实现细节。HLAPI 提供以下功能:
-
使用 Network Manager 来控制游戏的联网状态。
-
操作“客户端托管的”游戏,这种情况下的主机也是玩家客户端。
-
使用通用序列化程序来序列化数据。
-
发送和接收网络消息。
-
将联网命令从客户端发送到服务器。
-
执行从服务器到客户端的远程过程调用 (RPC)。
-
将联网事件从服务器发送到客户端。
三、引擎和 Editor 集成
Unity 的联网系统集成在引擎和 Editor 中,因此便于使用组件和视觉辅助工具来构建多人游戏。该系统具有以下功能:
- 用于联网对象的 NetworkIdentity 组件。
- 用于联网脚本的 NetworkBehaviour。
- 可配置的对象变换自动同步。
- 脚本变量自动同步。
- 支持在 Unity 场景中放置联网对象。
- 网络组件
四、互联网服务
Unity 提供互联网服务,以在游戏的开发和发布过程中为您提供支持,其中包括:
- 配对服务
- 创建比赛和通告比赛。
- 列出可用的比赛和加入比赛。
- 中继服务器 (Relay Server)
- 基于互联网但无专用服务器的游戏。
- 比赛参与者的消息传送。
五、NetworkTransport 实时传输层
我们包含了实时传输层,其具备以下功能:
基于 UDP 的优化协议。
多通道设计可避免线头阻塞问题
每个通道支持各种级别的服务质量 (QoS)。
灵活的网络拓扑可支持对等架构或客户端/服务器架构。
六、身份验证
Unity 的网络系统实现了简单的内置身份验证功能,这些功能为验证会话提供了基本支持,但并不是可靠的身份验证解决方案。
可靠的身份验证可能是开发多人游戏项目的重要因素,因为它有助于防止恶意用户劫持玩家会话、冒充其他用户、使合法玩家与游戏断开连接或其他针对游戏或应用程序的恶意行为。
由于 Unity只提供了简单的内置认证功能,如果你希望在您的游戏或应用程序中对恶意行为进行严格防护,那么网应当使用第三方认证和加密解决方案,或者自行使用诺如此参考实现以及NebonkTransort API 这样的插件来实现这些功能。
七、示例项目
下载链接
壁纸分享
总结
书接上回,承接下回,一系列的。欲知后事如何,且听下回分解。
本次总结的就是简介, 有需要会继续增加功能
如能帮助到你,就帮忙点个赞吧,三连更好哦,谢谢
你的点赞就是对博主的支持,有问题记得留言评论哦!
不定时更新Unity开发技巧,觉得有用记得一键三连哦。么么哒!