0

サーバー側で socket.io (nodejs) を使用し、クライアント側でイーゼル js を使用してマルチプレイヤー ゲームを開発しています。今までは非常に単純で、canvas 要素の上に四角形を移動すると、位置の更新がサーバーに送信され、位置がクライアントにブロードキャストされました。socket.io のルーム機能で処理される 2 人のユーザーのみが互いに対戦できるため、トラフィックは問題になりません。描画とゲームループはイーゼルjsで実現されています。

私が抱えている問題は、他のプレイヤーにとって動きがあまりスムーズではないことです。位置の更新は非常に高速です (ヒットの衝突などには十分です) が、もちろん、サーバー経由で位置の更新を取得したプレイヤーにとってはそれほどスムーズではありません。

アニメーションをスムーズにするにはどうすればよいですか? 現在、新しい Container クラスを作成し、次のようにコンテナーの位置を更新しています

myContainer = new MyFigure()
on('positionupdate', function(data) {
    myContainer.x = data.x
    myContainer.y = data.y
});
4

1 に答える 1

1

トゥイーン ライブラリを使用できます。たとえばhttp://www.createjs.com/#!/TweenJS

于 2012-11-17T13:16:06.513 に答える