2017/10/03 (Tue) 01:38
前回DOLのこと何も書いてなかったな・・・(笑い)
まぁ、今回も同じことを書いてくつもり。
ただ、今日の書くことはゲーム上の動きから予測しているもので、プログラムのソースコードを見ていない以上、推測の範囲は越えられないことを追加しておく。

まず、このゲームの洋上での座標の管理方法だけど、
なんかのイベント(例えば戦闘の開始や終了、切断からの復帰など)でしか実際の座標を渡していないようである。
実際の座標からは、差分(速度ベクトル)しかデータで渡していないようである。
171002_mechanism.jpg
ここに遅延が入り3秒後だけが長くなる。自分の画面では右のように緑の船をやり過ごしたように見える。けど、実際にはクリ位置に浮いている。見える位置と、実際の位置にずれが生じている。
はい、これが、右からクリをもらう仕組みです。
まぁ、図は見えやすい例示だから3秒のわずかな時間でズレはそれほど生じない。なので、右からクリは大体終盤とかに起こっているとおもう(少なくとも私は序盤でもらったことはない。)


ゲーム自体が速度ベクトルでデータ伝達しているから発生するのだけど、逆に位置情報(x,y)を逐一送るとどうなるか?
それも考え物だと思っている。
どのみち遅延は避けられない。遅延した直後は、敵船がマイクロワープドライブ(一瞬だけ速度が上がって、指定された座標へ移動)する。相手を砲撃しようとおもったらマイクロワープドライブしたってなったら、それはそれで不平がでそうである。
なので運営としても手の打ちようがないのだろうとは思っている。

遅延をなくす方法は、決定的な手段がないのが実情。ただ経由するルータを空いているルートを選択すれば起こりにくいのだろうけど、実際問題、個人の1端末からは不可能である。
たぶん、とあるISPへ乗り換えると改善すると考えている(あそこトークンリングとかだからなぁ・・・)。
ただ、ゲームためだけにISPをころころ変えるのは大局観がないかとは思うがね・・・。


序に、カクツキについても記載する。
カクツキって、結局下図のように自船の更新頻度(例では1秒が3秒おきに)が粗くなることで発生する。
更新頻度が粗くなる理由だが、消去法で考えると、システム内部のネットワーク的なもの(プロセス間通信?)と推測している。
人が多いく混雑しているから、更新頻度を下げているというより、システム内部で競合して、図の例では2回分ドロップしているように思える。
171002_mechanism2.jpg
※ 例のため秒単位で説明していますが、実際は数十ミリ秒単位と思う。
あとは、オブジェクトが多くなることで、描画に時間かかっているものとは思う。
このゲーム、ポリゴンエンジンが相当古く、げっ!Forceや ラ!Deonを本気にさせていない。
多分シェーダとか、ほとんどCPUが処理しているようだ。
以下は、高画質モードで描画したときの例。
170312drawtestment.jpg

実際に、同じPCのグラボが本気を出すとこうなる。
170718_scorpionnavie.jpg
170715_eve_hurricane.jpg

 
 
More:
 
なんかそんなことを某所の空き家で放置して描いてたら、なんかあの港への投資やってはったわ。
こりゃ、投資総額100G行くかなwww?
まぁ、市長なっても、ちゃんと「精力的」までもっていくってのなら別のいいんだけどさ・・・
スポンサーサイト

 
コメント投稿
名前
題名
mail
URL
pass
装飾
本文
非公開