フレームレート検証
ティアリング時のフレームカウント方法を変更しました。
描画できた範囲を数えてそれが1画面分に達したらカウントが上がる方式を採用しています。
しかし、前回のバージョンではカウンタを1つしか用意してなかったので、連続してティアリングが発生した場合に一方のティアリングした方が無視されていました。
そこで今回の修正で各フレームにカウンタを持たせてそれが描画できた時点で+1する形に修正。
60fpsのティアリングタイトルでの精度が上がった感じとなりました。
ベヨネッタ
前回は想定より大幅にフレームレートが低かったのですが、ティアリングカウントを改善してかなり精度が向上。
一部まだ誤検知(というか画面が壊れてる)箇所がありますが、一旦保留。
比較用も作ってみました。
Devil May Cry 4
ティアリングカウントの仕組みを変えてから誤検知しまくり。
カットシーンに入ると画面上部、下部に黒いふちが入りますが、これが誤検知してます・・
よって前バージョンよりも精度が悪い形に・・。
バイオハザード5
早くも5回目。
ウチのツールでベンチマーク的存在になってます。
修正によってティアリングカウントが増えているようです。
ブルードラゴン
ティアリング検出率アップ。
0:22で誤検知して0fpsに。
背景の暗がりが誤検知してるみたいですね・・
ドラゴンズドグマ
ティアリング検出率大幅アップ。
DMC4と違ってこのゲームは常時画面上部、下部に黒いふちがでます。
そこでツール側でティアリング検出範囲を指定できるようにし、誤検知しないように対策しました。
ただ、これは手動で座標入れるタイプのものなので将来的に自動化出来れば楽だなあと思います。(DMC4のように途中で黒ふちが出てくることもあるし)
クロバラノワルキューレ Black Rose Valkyrie
ティアリング誤検知していたので検知しないフラグを用意。
自動化出来れば良かったんですが、まだ調査不足。
ざっとチェックしてティアリングしてない雰囲気なら「ティアリング検知OFF」にして検証する形で行こうかと。
一応、会話シーンも検証してみました。
まあ特に重いこともしてないので60fps安定で予想通り。
テイルズオブヴェスペリア
クロバラと同じく「ティアリング検知OFF」で検証。常時60fps。
前回よりは精度が上がりましたが、未だ誤検知は健在。(というか増えた印象)
一個ずつ潰していくしかないですね。
2018.09.04 追記
現バージョンはティアリング検知周りに問題がありますが、ティアリングが発生しないタイトルに関しては精度がだいぶ上がってきてるので無双系タイトルを調べてみました。
真・三國無双7 Empires
60fps可変で平均35fps前後。
めちゃめちゃ大量に敵が出ても30fps以下にならないのが中々凄いですね。
ティアリングもなし。
戦国BASARA4 皇
常時60fps。全然フレームレートが落ちません。
大技使ったりしたら落ちたりするんでしょうか。(お試しなのでちょっとしか動かしてません・・)
真・三國無双7Empiresと比べると敵の数が少ない印象ですが、よく出来てますね。
ティアリングもなし。