2014/10/21

描画遅延について思うこととか

図なし文字だけの、半ば愚痴じみたメモ。新しい情報とかは特に無いのでひっそりと更新。


・遅延の定義
そもそも描画遅延って表現がどうなんでしょう。
諸々の定義や測定手法とかを自分なりに「ゲーミング環境における入力-描画遅延の定量的評価」なんて名前のPDFファイルにしていたのですが、ファイルの海に沈んでしまいました。

とりあえず、最近私が言っている描画遅延は、
【手での入力→マウス→PC→ディスプレイ→カメラ】へ動作が反映されるまでの時間としています。
しかし人体の表面は弾性体ですし、加速特性が緩やかという特徴があるので、とりあえず
【マイコン→PC→ディスプレイ→カメラ】という流れにして、当該間の所要時間を測ったというのが前回の記事でした。

現実世界では、動作させたい物(普通は人体ですね :D)と実際に作動する物が同じですので、例えば手の動きが手に反映される時間は0になります。
もちろん作動させるシステム(銃・機械等)の動作にかかる時間があるので、現実世界においても無遅延では無いのですが、こちらは完全にメカニカルエンジニアリングの世界ですし、機械においてはバックラッシ等が必要なので理論的に0には出来ません。



・昔もトライした話
実は過去に人の手と電飾付きゲーミングマウスでトライした事はあったのですが、マウスの動き始めは一桁カウントになる場合が多く、ミリ秒単位の精度を出すにはそれなりの根気と工作が必要だということで休止させていました。
その時はUSB HID制御無しで精度を出すそうと思っていて、マウス自体に物体を衝突させて一気に加速させる手法あたりを考えていました。
後はマイコン制御のモータを使って制御するとか、こっちは結構遠回り感があります。

今後のことを考えると、センサ+マイコンの速度・加速度応答の特性を測るにはどちらにしろそれなりに速いモータを制御しないといけないので、機械加工とモータドライバ作りは必須なのですが。「やりたいこと」と「技術力」と「時間管理能力」がチグハグな感じです。



・システムのコンフィギュレーションについて
rafaさんから、デバイスやゲームエンジン等のシステム全体のコンフィギュレーションを変えてテストすればより低遅延な設定を模索出来るのではないかというコメントを頂いて、とりあえず自分の環境ではトライしてみようかなと思っています。
とりあえずCS:GOのグラフィックの設定をいじくり回す所からですね。あとはオンボードの不使用デバイスを無効化したり、ぶら下がってるHID達を取り除いてみたりモニタの固有機能のON/OFFとかは調べたいです。



・より網羅的に遅延を考える
遅延時間を変えうる要素として、入力側から順に

マウス
OS
Raw Input
ゲームタイトル
各タイトル内でのコンフィグ
GPUベンダー
GPUのアーキテクチャ・機種
各デバイスのドライバのバージョン
各デバイスのファームウェア
ディスプレイそのものの
各ディスプレイの固有機能

などなどがパッと思いつくだけでも挙げられます。
勿論、財力的にも人的リソース的にも私だけで全部テスト出来ませんし、そもそもする気は初めからありません。
そういう意味ではゲーミング環境における遅延測定のフレームワークが必要なのかなといった感想を抱きます。更に先を見ると、最も遅延が少ない状態へ自動でチューニングしたりとか出来ると極低遅延環境実現への夢が広がります。
また、複雑なシステムの測定では、厳密にレギュレーションをして評価する必要があるので「ベンチマークレギュレーション」的なものも合わせて必要なのかもしれません。
まあ、同一システム内での相対値だけ見れば違うシステムでも大体は適用出来ると思うのですが。とりあえず自分で測った分は公開したいと思います(私がトライすれば、ですが)。

遅延自体は、ある程度ゲームをやっている方なら体感して、注意していると思うのですが、日本だとあまりフォーカスされない話題ですね。やはり、昔は機材も高価でしたしミリ秒単位の定量的に測れない物だったということも関係しているかもしれません。
VRの辺りからはチラホラ話が出ているような気もしますし、もう少し盛り上がると良いのですね。



・Ask.fmはじめました
URLはこちら。
http://ask.fm/systema_

デバイスに関しては大した台数持っていませんし、やっている事が低レイヤの部分ばかりなので「このマウスどうですか?」的な質問には全然答えられません。またゲーミングデバイスに関しては偏見的かつ、かなりラジカルな思想なのでその点に関しても微妙。
左利きなのに右手でマウスを使っていて、射撃キーをキーボードにバインドしていてG300rが最強だと主張するゲーマーに聞くことでもないと思います。

「G402に載ってる加速度センサの詳細を教えて下さい」とか「マウスに付いているLEDが増えると遅延が増えるの?」的な質問なら嬉々としてお答えできるのですが。

また、匿名性を上げることで、ブログの内容についての質問とか誤りの指摘を期待しています。
自分は記述を端折る癖があるので、わかりづらい所とか可視化出来ると良いなと思っています。こんな感じで結構ネガティブなモチベーションですが、分かりづらかったり、嘘を書いてそれを公開していても仕方ないですからね。

0 件のコメント:

コメントを投稿