ちがさねKenshi倉庫

PCゲーム、Kenshiに関するブログです。モッダーなので解析的なデータを多く扱います。

パフォーマンス系MODの効果を比較検証

ごきげんよう、ちがさねルアナと申します。
PCゲーム、Kenshiにはいくつものパフォーマンス系MOD(ゲームの処理を軽くするMOD)がありますが、それらのMODがどのような働きをして、どの程度ゲームが軽くなるのかを正確に把握できている人はほとんどいないと思います。

そこで今回は有名なパフォーマンス系MODをいくつか紹介し、そのMODが何処の何に作用して処理が軽くなるのか、他のパフォーマンス系MODと比較してどの程度の効果があるのかを検証・解説していきたいと思います。

今回のお品書きです。

それではさっそく紹介に移ります。

テクスチャ圧縮「Compressed Textures Project」

steamcommunity.com

テクスチャとはゲーム内で3Dオブジェクトを描画するために使われるファイルで、3Dモデルの骨組みの表面に張り付けられる画像です。これを圧縮すると3Dオブジェクトの読み込みがスムーズになりますが、画像の解像度が低くなるためオブジェクトの質感が悪くなってしまいます。ただ、少なくともこのMODに関してはテクスチャの圧縮率がさほど大きくないので、質感の悪化は殆ど体感できないと思います。

テクスチャ圧縮「Texture Options 1024」

steamcommunity.com

こちらもテクスチャ圧縮のMODです。「Texture Option 1024」の圧縮率は「Compressed Textures Project」とほとんど変わらないので好きな方を使ってください。
ただし、こちらのMODにはマイナーチェンジ版としてより圧縮率の大きくなった「Texture Option 512」というMODがあります。こちらのMODを入れると1024、「Compressed Textures Project」よりさらに処理が軽くなりますが、テクスチャが露骨に荒くなり、様々なオブジェクトの質感が目に見えて悪くなります。
なお「Compressed Textures Project」、「Texture Option」シリーズは同時に読み込むと競合が起こり、読み込み順が下にあるMODのみが反映されます。詳しい読み込み順の仕組みについては下記動画で解説しています。

草木・岩の頻度低下「Less Clutter x0.25」

steamcommunity.com

このMODを導入するとフィールド上にランダムに生えている草、木、岩などの風景アイテムの出現頻度が減って、読み込まれる3Dオブジェクトの数が減少しゲームの処理が軽くなります。
なお、このMODで鉱脈などのアプローチ可能なアイテムが減少することはありませんが、一部の岩が消滅してしまうため他のMODで追加された建物が宙に浮いてしまったり、岩でふさがっていた壁に穴が開いてしまったりすることがあります。

また、上のリンクでは出現頻度を0.25倍にするものを紹介していますが、0.5倍にするもの0倍にするものなどもあります。また、同作者さんのMODでは草木の頻度のみを0.1倍にするもの岩の頻度のみを0.5倍にするものなどいくつかのマイナーチェンジ版があります。

パーティクル画像のファイル形式最適化「KPM: Performance Particles」

steamcommunity.com

Kenshiでは炎などが描画されるときに、たくさんの細かい画像・CGを規則的に動かしてシミュレーションを行っています。このパーティクルシステムというシステムはGPUで処理されるのですが、その際に画像のファイル形式は.PNGから.DDSに変換する必要があり、パーティクルを処理するたびに画像の変換処理が発生しています。
このMODはゲームのパーティクルに関する画像を.DDS画像に差し替えることで処理軽減を図るMODです。差し替えられた画像はファイル形式が変化していて、同時に1/16のサイズに圧縮されています。

天候削除「Removed Weather Effects」

steamcommunity.com

天候もパーティクルシステムによって描画されています。このMODは雨、砂嵐、灰、霧等の天候が描画されないようにして処理軽減を図るMODです。ただし、砂嵐などはプレイヤーから見えないようになってもステータスにデバフを与えますし、毒ガスなどはそもそも発生しなくなってしまいゲームの難易度が下がります。

ハイトマップの圧縮とプリコンパイルされたシェーダーのキャッシュ「Re_Kenshi」

www.nexusmods.com

ハイトマップとは3Dオブジェクトのテクスチャーに関連するファイルです。
訂正:ハイトマップとはKenshiの地形データが保存されているTIFF形式の大容量画像ファイルです。
これが圧縮されることによってゲームの処理が軽くなります。HDDにゲームを保存している場合は特に効果が大きいですが、SSDに保存している場合はそもそもの読み込み速度が速いので効果は薄いようです。
また、「プリコンパイルされたシェーダーのキャッシュ」によって3Dオブジェクトの陰影処理が一時的に保存されるようになり、ゲームのメニュー画面でなぜか処理が爆増する現象が無くなり、全体的な処理も軽くなります。

追記:
Re_Kenshiの開発者さんに翻訳データを提供し、Re_Kenshiのメニューとインストーラーの言語で日本語を選択できるようにアップデートして頂きました。
一人で翻訳したのでプログラム関連の用語などに誤用があるかもしれません。見つけた方は私までご連絡ください。

追記:パーティクル画像のファイル形式最適化その二「Particle System Override (PSO)」

www.nexusmods.com

最近一部で話題になっていたのでこのMODも追記いたします。
このMODは上で紹介した「KPM: Performance Particles」と非常によく似ていて、パーティクルに使われる画像のファイル形式を最適化するMODなのですが、その最適化方法が全く異なります。
このMODをダウンロードしてexeファイルを起動すると、Kenshiの元データとして収められているパーティクル画像のファイル形式が変換されます。この変更はKenshiの元データの整合性チェックを行わなければ削除されません。

このMODの与える効果は「KPM: Performance Particles」とほぼ同じですが、KPMはファイルの圧縮効果も持っています。導入はKPMよりも面倒ですが、PCのスペックにかなり余裕がありパーティクル画像の解像度を少しでも落としたくないという方はこちらのMODがお勧めです。
ただし、そもそもパーティクル関係の処理はゲーム全体の処理から見ると大した割合ではないという指摘もあります。そもそもKPMとPSOの処理軽減効果がどちらも低いのであれば、そのどちらがより優れているのかという話には大した意味がないのかもしれません。

実際の効果を比べてみよう!

レギュレーション

・自作MODを使い、グレートデザートのストートからスワンプの街シャークまでキャラを移動させ、その時間を計測します。画面外では仲間がブラックスクラッチに待機しています。砂漠は砂嵐の描画で処理が重く、スワンプも処理の重くなる地域として有名です。ブラックスクラッチも徘徊部隊などが多く、裏でこの周辺が読み込まれているとさらに処理が重くなります。
・自作MODによって全勢力と同盟状態、開始キャラであるスケルトンは殆どのステータスが100になっています。移動中に戦闘を仕掛けられたりすることはありません。
・計測につかったMODはこちらから導入可能ですが、検証結果はPCのスペックによっても変わってくる可能性があります。今回の検証結果も含め、効果の違いは参考程度の物だと考えてください。

検証結果

youtu.be

動画最後の、バニラ記録との秒数差がこちらです

「Compressed Textures Project」と「Texture Options 512」の記録がほとんど変わらないのが謎です。この2つは条件を少しづつ変えて何度か検証をしたんですが、どれも記録はほとんど変わらず、なんなら機能が低いはずの「Compressed Textures Project」の方が記録が速くなる場面もありました。テクスチャ関連の負荷軽減効果にはキャップがあり、一定以上の効果だとそれ以上速くならないのでしょうか。

話を変えて、「Less Clutter x0.25」はかなりいい記録が出ています。6種MODを全部乗せした参考記録にも届きそうな勢いです。録画を見ていても「Less Clutter x0.25」の画面だあけ明らかにフィールド上のオブジェクトが少なくなっているのでこの記録になったのにも納得です。

「KPM: Performance Particles」は天候描画の負荷を下げるのがメインだと思っていたので、天候を一切削除する「Removed Weather Effects」より記録が良かったのが驚きでした。天候以外のパーティクルシステム処理が相当軽くなっていたようです。

「Re_Kenshi」の記録も良い感じです。ゲームの見た目にほとんど影響を及ぼさないMODでこれだけ軽減効果が出ているなら、これだけ目当てでも入れる価値がありそうです。

しかし個々の記録を見ていくと、全部乗せの記録がやたら低いような気がしてきます。
6種のMODの内少なくとも「Less Clutter x0.25」、「KPM: Performance Particles」、「Re_Kenshi」の3つは軽減効果が一切被らず別々の部分で処理を減らしているはずなので、全部乗せの記録の秒数差(127秒)は3つのMODの秒数差(155秒)の合計を上回ってくるはずです。
こちらもやはり軽減効果にキャップがあるのか、それとも処理が減って余裕が出来た分別の処理が増えた(そんなことある?)のか。こういう話に詳しい方がいらっしゃいましたらコメントいただけると幸いです。

 

 

記事サムネ置場