8

我正在为我制作的多人游戏用 C# 构建 Unity3D 客户端。服务器是用 Node.js 编写的,我用 Javascript 编写了一个运行良好的 Web 客户端。但是我的 Unity3D 客户端实现遇到了滞后问题。我正在使用websocket-sharp库,但无法像在我的 Javascript 客户端上使用 HTML5 Websocket 类那样使用它。我认为问题在于 websocket-sharp 库的制作方式,目前每个 Send() 都会导致 _forSend 锁定,因此数据将像这样传输:

data1:frg1

data1:frg2

data2:frg1

data2:frg2

...

但是在我的工作 javascript 实现中,它看起来像这样,因为它是真正的多线程:

data1:frg1

data2:frg1

data2:frg2

data1:frg2

因此,我相信这是我的 C# Unity 实现滞后的原因,因为 websockets-sharp 库的行为是这样的。任何人都可以确认这是 websockets-sharp 库的问题或建议一个可以工作的库吗?

4

1 回答 1

-3

我在我的项目中使用了 Socket.IO for Unity,它可以工作。当有人知道gilf时,我实施为我的游戏示例创建通知....

https://www.assetstore.unity3d.com/en/#!/content/21721

于 2017-03-13T09:04:29.160 回答