首页 > 解决方案 > 使用网络管理器中内置的统一有什么缺点?

问题描述

为什么 Unity 游戏开发者自己实现服务器而不是使用 unity 内置NetworkManager

貌似用 .js 可以轻松开发多款网络游戏NetworkManager,但为什么开发者自己用 node.js 等实现服务器呢??

标签: unity3dgame-developmentonline-game

解决方案


我的理解是,两个单独的统一项目不可能使用 Unity HLAPI(高级 API,这是正在使用的)相互交谈NetworkManager

这意味着您必须在同一个项目中拥有所有服务器代码和所有客户端代码。这确实不是问题,但是对于更大规模的项目,将服务器与客户端分开可以更容易使用,并且您不会将所有服务器代码推送给客户端以进行逆向工程。

假设您有一个基于回合的非实时游戏,例如拼字游戏,在这种情况下,使用节点或任何http协议都是有意义的,在这种情况下,您有一个带有数据库的集中式服务器,用于持久化游戏状态。

但老实说,当你拥有 Unity TLAPI(传输层 API)时,我真的不知道为什么有人会更喜欢纯套接字

https://docs.unity3d.com/Manual/UNetUsingTransport.html

我希望这有点帮助,而不仅仅是咆哮。


推荐阅读