私はマルチプレイヤーロールプレイングゲームを開発中です(いいえ、mmorpg;はありません)。滑らかなマルチプレイヤーの動き
私の現在の設定はこのようなものです。
クライアントはサーバーに「私は前進したい」/「後ろに移動したい」と指示した後、エンティティを更新し、その領域のすべてのクライアントに変更について通知します。サーバは20msごとに各エンティティを更新し、クライアントに100msごとに更新を送信します。これらの更新には位置、速度、回転などが含まれます。
これまでのところ、とても良いですが、パケット間の動きをスムーズにするために、クライアント側では、私はそれを動作させることができないと言う必要があります。私は予言、補間、デッドレキソニングについて読んできましたが、そのすべてが私にとって大変です。
今私はちょうど "Position = Packet.Position"のようなことをしています。これは非常に吃音の動きを引き起こします。
だから私は助けたいと思っていますが、どうすればよりスムーズな動きを得ることができますか? XNA予測サンプルを見てきましたが、正しく取得できませんでした。
ありがとう//
プレーヤーの動きだけをスムーズにする必要がありますか?クライアントはプレーヤーの現在の速度を知っていますか? – ssmir
さて、私は現在、プレイヤーしか持っていないので、それが私の主な関心事です。クライアントは速度を知っており、サーバーからのステータスパッケージに含まれています。実際に私はIRCで素敵な答えを得て、明日それを試してみましょう。 –