2018年2月5日月曜日

御城プロジェクト:RE/千年戦争アイギスがChromeで余りに重い件

2018/02/14
Chromeがバージョンアップしました.
バージョン: 64.0.3282.167(Official Build) (64 ビット)
で本不具合が改善(元に戻る)します

https://chromium.googlesource.com/chromium/src/+log/64.0.3282.140..64.0.3282.168?pretty=fuller&n=10000 

"Fix canvas flickering properly and remove GPU performance regression"
とのことで, 公式に「canvasのGPU周りでしくじってたのを直した」との見解が出たので速やかにバージョンアップして良さそうです.

---

公式の対処策だと,WebGLを使っているゲーム(神姫とか)やFlashでもハードウェアアクセラレーションが無効化されてしまうので, 快適にゲームをするためにいちいちブラウザ設定を変更する必要があります.

そこで本記事ではその代替案を紹介します.

※この手の問題はDMMに文句を言うよりもGoogleに報告するのが筋です
Chromeの「問題の報告」から「お前さんのところのChromeを使うとめっさパフォーマンスが落ちるサイトがあるよ」と伝えてあげましょう
ブラウザをOSごとクラッシュさせうる問題なので, 喜んで受け取ってくれるはずです

Chrome(Opera, Vivaldi共通, Kinzaもおそらく同様)に対し, 下記の設定を行います.

  • ブラウザ設定の「ハードウェア アクセラレーションが使用可能な場合は使用する」の項目は「ON」のままでよい.
     
  • URLバーに「chrome://flags」と入力し, フラグ設定画面を開く. すると,

    試験運用機能
    64.0.3282.140
    警告: 試験運用版の機能です。 これらの機能を有効にすると、ブラウザのデータが失われたり、セキュリティやプライバシーが侵害されたりする可能性があります。有効にした機能は、このブラウザのすべてのユーザーに適用されます。

    と出るが, 気にせず
    「Accelerated 2D canvas」(もしくは「アクセラレーションによる 2D キャンバス表示」)の項目を「Disabled」に変更する.


→ ブラウザを再起動します.

すると, ハードウェアアクセラレーションがcanvas2D系のゲーム(城プロ/アイギス)では無効となり, WebGL系/Flash系のゲーム(神姫等)では有効となります.

つまり, 何もしなくても快適にゲームを続けることが出来るって寸法ださぁ

注意点

政剣はアイギス・城プロと同じくcanvas2D系のゲームでありながら, 内部で利用しているライブラリ(利用しているAPI)の違いからAccelerated 2D canvasを有効とした方が快適にプレイできます.
そのため, 場合によりプレイするゲームを(Accelerated 2D canvasを有効化した)ベータ版ChromeChromium, Opera, Vivaldy, Kinza(及びFireFox, Edge, Safari)といった複数のブラウザに振り分けることも検討しましょう.

なお, 巷で「Ironが速いよ」との書き込みも見受けられますが, これは「Iron」が速いのではなく, Ironが内部で利用しているレンダリングエンジンが(速度低下を引き起こす前の)Chrome63と同等であるから速いのであって, Chrome64と同等となった際にどうなるかは不明です(Vivaldi, Operaも同様).
※Chromeから余計な機能を削除しているので本質的にChromeよりも速いのですが, 64のパフォーマンスの劣化具合がそれを打ち消して余りあるレベルであるため, 今から注視しておいたほうが良いでしょう.

上級者向けの情報

Accelerated 2D canvasの無効化はChromeを「--disable-accelerated-2d-canvas」スイッチ付きで起動することでも対処できます.

この方法であればゲーム毎に最適な設定をショートカットやランチャーとして登録することが可能です.

(その代償として, アクセラレーションの状態がchrome://flagsからは確認できなくなります. なお起動スイッチの内容はchrome://verionから確認できます)

0 件のコメント:

コメントを投稿