現在、NodeJS + SocketIOを使用してゲームを開発中ですが、送信されるデータの量に問題があります。現在、サーバーは約600〜800 kbpsを送信していますが、これはまったくうまくいきません。ここでNodeJS +ソケットIOがあまりにも多くのデータを送信する
は私のクラスである:
Shape
Pentagon
Square
Triangle
Entity
Player
Bullet
すべてのフレーム(60fpsの)、私はクラスのそれぞれを更新し、各クラスには、クライアントに送信されますupdatePack
を持つことになります。 updatePackはかなりシンプルで、オブジェクトのidとcoordsのみを含んでいます。
最初は、みんなのゲームはそんなものだと思っていました。私はagar.io、slither.io、diep.io、rainingchain.comのようないくつかの単純なゲームを調べて、彼らが100kbpsを使用していることを発見しました。
次に、送信されるデータを圧縮してみました。
for(var i in list_containing_all_of_my_sockets){
var socket = list_containing_all_of_my_sockets[i];
data = set_data_function();
socket.emit('some message', data);
}
はどのように作ることができ、それはより少ないデータを送信します。Socket.io
に送信するときに、しかし、私はここでが、私は自分のデータを送信する方法、データを自動的に圧縮されていることが分かりましたか?私が逃した何かがありますか?
興味深いですね!試してみましょう、私はあなたに戻ってきます。 – Meinkraft