Php 一个像水滴截击这样的游戏的服务器

Php 一个像水滴截击这样的游戏的服务器,php,javascript,html,websocket,Php,Javascript,Html,Websocket,我制作了一个在线HTML5游戏,比如blobby volley(两个果冻在打排球)。我有一个php上的websocket服务器。游戏以每秒50帧的速度运行。下面是一个工作原理的示例:我按下右箭头按钮,我的客户端将moveForward标志设置为true,并将消息发送到服务器。服务器将消息传输到另一个客户端,该客户端处理该消息。当客户端处理keyup时,它会执行相同的操作,但会将moveForward标志设置为false。 问题是服务器将消息传输到客户端需要一些时间,因此当keyup事件触发时,j

我制作了一个在线HTML5游戏,比如blobby volley(两个果冻在打排球)。我有一个php上的websocket服务器。游戏以每秒50帧的速度运行。下面是一个工作原理的示例:我按下右箭头按钮,我的客户端将
moveForward
标志设置为
true
,并将消息发送到服务器。服务器将消息传输到另一个客户端,该客户端处理该消息。当客户端处理
keyup
时,它会执行相同的操作,但会将
moveForward
标志设置为
false

问题是服务器将消息传输到客户端需要一些时间,因此当keyup事件触发时,jelly在一个客户端上立即停止,但在另一个客户端上仍在移动,并在一秒钟内停止。有没有办法让它更同步?

你可能想在游戏中忽略服务器,让它成为浏览器之间的点对点通信


我没有这方面的个人经验,所以我能给你的最好的链接是。似乎大多数浏览器最近都增加了对WebRTC的支持。

与其传递动作,不如传递位置,这样会更准确,但我想还是会有一点滞后。

是的,浏览器中增加了对WebRTC的支持,但现在它没有数据通道。他们很快就会加上,这正是我需要的。很高兴我能帮上忙。一旦你使用它,如果你在这里写下它是如何为你工作的,那就太好了。WebRTC数据通道已经在Chrome Canary上实现了。我已经学会了如何设置p2p连接,下一步是将所有代码添加到游戏例程中。