0

私は、blobby volley(2つのゼリーがバレーボールをしている)のようなオンラインHTML5ゲームを作成します。私はphp上にwebsocketサーバーを持っています。ゲームは50fpsで実行されています。仕組みの例を次に示します。右矢印ボタンを押すと、クライアントがmoveForwardフラグを設定trueしてサーバーにメッセージを送信します。サーバーはメッセージを他のクライアントに転送し、このクライアントがメッセージを処理します。クライアントが処理keyupするときも同じことを行いますが、moveForwardフラグをに設定しfalseます。問題は、サーバーがメッセージをクライアントに転送するのに時間がかかることです。そのため、キーアップイベントがトリガーされると、ゼリーは一方のクライアントではすぐに停止しますが、もう一方のクライアントでは移動し続け、1秒以内に停止します。それをより同期させる方法はありますか?

4

2 に答える 2

0

アクションを送信する代わりに、位置を送信するだけでより正確になりますが、それでもわずかな遅れがあると思います。

于 2013-01-21T14:19:53.193 に答える
0

ゲームプレイでサーバーを省略して、ブラウザ間のピアツーピア通信にしたい場合があります。

私はこれについて個人的な経験がないので、この質問へのリンクを提供するのが最善です。最近、ほとんどのブラウザーに WebRTC のサポートが追加されたようです。

于 2012-07-21T11:25:13.937 に答える