ETS2 オプション(設定)の解説 その1.5 スケールレンダリング&MLAA編

どうも、け~えすです。

前回の記事の解説の中で、文章量の関係上書けなかったスケールレンダリングとMLAAの解説をしていきたいと思います。

一部には私の立てた仮説が入ったりしますが、概ね問題なく(内容に破綻が無く)説明できていると思っております。

ご注意
この記事はETS2 Ver1.34の時に書かれたものです、本バージョン以外では項目の増減や内容の変更があるかもしれません。またATSも基本的には一緒ですが、一部違うものがあるかもしれません。 
以上ご了承のほどよろしくお願い申し上げます。

スケールレンダリング

 設定:400%~25%
ETS2で設定されている画像解像度(画面サイズ)に対して、ここで設定した数値を使って拡大・縮小する機能です。

最終的には画面サイズに調整されるので、例えば400%の場合だと、画面サイズの縦横をそれぞれ2倍に広げた仮想画面で描画し、その後画面サイズに縮小して
モニターに出力しています。

上記説明については、SteamのETS2コミュニティにてSCSの開発者が以下の様にコメントしております。(当該スレッドへのリンク

Komfr氏のコメント
Scaling value higher than 100% behaves as super-sampled anti-aliasing. If you have 1920x1080 and 400% scaling, the image is rendered in 3840x2160 so the result is 4xAA. Scaling value smaller than 100% can be used to run the game on native resolution of your monitor (e.g. without bluring the UI) while rendering the 3d image in lower resolution to increase performance.

100%を超えるスケーリング値は、スーパーサンプリングアンチエイリアシングとして動作します。1920 x 1080と400%のスケーリングがある場合、画像は3840 x 2160でレンダリングされるので、結果は4 x AAになります。100%より小さいスケーリング値を使用すると、パフォーマンスを向上させるために3D画像を低解像度でレンダリングしながら、モニタのネイティブ解像度で(UIをぼかすことなく)実行することができます。
コメントにもあるように、拡大方向(125%以上の設定)で運用する場合、画面サイズに縮小される際にアンチエイリアス(以下AA)が自動的に掛かるようです。

上記コメントに対し、ユーザーが質問をしてまして、その回答をKomfr氏がされてます。
2つのコメントを翻訳にて引用しますと

ユーザーの質問
私はMLAAをオフにして、100%のスケーリングでゲームをきれいにしました。 しかし、画像の拡大縮小は、オブジェクトの解像度とエッジに影響するだけなのでしょうか。それとも、テクスチャ品質、オブジェクト品質、およびオブジェクトレンダリング距離にも影響するのでしょうか。 それは私だけなのでしょうか、それとも高い画像拡大縮小設定では木はずっと良く見えるでしょうか。

Komfr氏の回答
直接解像度にのみ影響し、残りのシーンは同じ方法でレンダリングされます。解像度が上がると、ライティング計算の結果(特にポールのような小さな丸いオブジェクトに表示される)、テクスチャの内容、およびスクリーンスペースの効果(影のノイズ、ツリーのLODレベル間のディゾルブ)のアンチエイリアシングが可能になります。解像度が向上したため、GPUはテクスチャ内でより高品質のミップマップを選択する可能性もあります。

このように、スケールレンダリングを使うことで、縮小する事による画像の細密化とAAの効果と高品質ミップマップの選択といった高画質に期待できる画像処理を行ってくれるわけです。

100%の場合はゲームが生成した画像をそのまま出力するために上記効果が得られない事になります。
100%以下の場合、小さい画面を拡大して描画する事になり画像が汚くなりますが、その分描画処理の負荷が軽くなります。

余談ですが、「400%って縦横4倍じゃないの?」って疑問が出るかと思いますが、この400%とは面積比での数値の様です。
Komfr氏の説明にもありますが、400%とはフルHD(1920x1080)の画面サイズだと3840x2160になると書いてます。
1920x1080=2073600ドット 3840x2160=8294400ドット
8294400÷2073600=4 となります。

仮説 レンダリングスケール100%の画面の荒さの理由

スケールレンダリング100%だと、結構画面が汚くない? って感じる方も多いかと思います。 私もそう思ってますし。
以下に書くのは個人的な仮説に基づいた内容ですので、間違いがあるかもしれません。
その辺を考慮に入れてお読みいただけると助かります。

ゲームに画面解像度の設定があり、それはお使いのモニターの画面サイズに合わせていると思います。
フルHDの液晶をお使いの方でしたら、1920x1080でお使いになっていますよね。
フルスクリーンでもウインドウモードでも一緒なんですが、ゲーム自体が生成している画面サイズが、画面サイズに関係なく一定の物で作られていると思われます。

例えばミラーの設定ファイルなどに頻繁に出てくる 1440と900の数値があります。
この数値はミラーだけでなく、いろんなところに出てくるんです。
Base.scsを解凍し、¥base¥system¥ui¥hdr_setup.siiを開くと、 「coords_r: 1440
 coords_t: 900」とか「area_r: 1440 area_t: 900」を見つけることが出来ます。

いすゞGIGAのMODの制作者の整備士さんとお話してた際に、「バックモニターを制作する際にF2ミラーを流用してたんですが、ミラーの設定にも随所に1440と900が出てくるんですよ。」との情報も頂いております。

つまり、ETS2自体は1440x900のサイズを基礎解像度として生成し、その後に画面解像度に併せて拡大・縮小している物と思われます。これはスケールレンダリングの処理よりも前に行われている物です。

例えばノートPCとかでよくある1366x768とかのサイズであれば、基礎解像度より小さいので縮小されます。 スケールレンダリングのような効果(AA等)はありませんが、そこまでひどいことにはならないと思います。

フルHDの液晶だと1920x1080ですから、1440x900からフルHDに拡大する必要があります。 AA等の効果も負荷されずに単純に拡大されるだけですから、画像は荒くなる方向になりますよね。(1440x900からフルHDだと約1.6倍の拡大が必要)
これがレンダリングスケール100%で画像が荒くなる原因の一つになっている考えられます。
フルHDと1440x900でのスクショを撮ってみました。(クリックで拡大表示)
(1440x900のSSは整備士さんに撮影してもらいました。 ありがとうございます。)

じっくり見ないと判り辛いのですが、ドアの安全窓の下のプレスラインを見比べると違いが判るかと思います。
視点がやや遠いSSですので、近い視点の物で見比べると判りやすいかな?

100%で画像が荒くなる件の結論としては、
・100%だと画像補正が一切無いので、125%以上に比べて荒く映る。
・1440x900の画面解像度以外の液晶だと、無補正の拡大縮小が行われる。
この2つと、その他の画面設定が絡み合って、画像の荒さの高低が出てきている物と思っております。

この辺は仮説の積み重ねなんで軽く読んでください。 間違ってたらご指摘くださると助かります。

MLAA

正式名称は「Morphological Antialiasing」で、アンチエイリアシングの1つです。

アンチエイリアシング(アンチエイリアス 以下AA)の詳しい解説は自分では難しいので簡単に書きますと
1.斜めや曲線を表示する際に、ギザギザ(ジャギー)が発生する事が多く、その表示を軽減するために行う処理の1つ。
2.AAにも色々と種類があるが、「ジャギーの判断方法、それとジャギーの修正方法」の違いが殆どである。
興味のある方はアンチエイリアスで検索してみてください。 Wikipedia以外にもいろんな資料が見つかると思います。

AAにも色々と種類がありますが、MLAAはAMD(ATI)のGPUにも採用されているAAです。 同様のAAはnVidiaが採用しているFXAAがあります。
この事から、以前は「AMDのグラボならETS2内製のMLAAで、nVidiaならFXAAを使うといいと思う」といった意見も多かったです。 今はこの意見をあまり聞かないのでわからないのですが。

余談ですが、SSAA(SuperSample AntiAliasing)ってAAもあるんですが、この方式は先に書いてたスケールレンダリングの機能に内包されています。(Wikipediaへのリンク
スケールレンダリングを125%以上にするとSSAAが自動的に入り、MLAAをONにしているとスケールレンダリングで出力された画像にMLAAの効果が乗ります。


ETS2のMLAAについての解説ですが、ETS2SCAを作られてるうなちょさんのツイッターに、MLAAの効果を解りやすく編集したスクショがありました。 掲載の許可を頂けましたので転載させていただきました。
(ツイッターの画像を編集して掲載しております。 加工の許可も頂いております)

レンダリングスケール25%・100%・200%・400%でMLAAのON/OFFを纏めた画像です。
Scaniaのキャビン後方のカウルを撮ったものですが、曲面のギザギザ(ジャギー)の違いがよく出ています。 垂直同期をOFFにしたFPSも一緒に載っているので負荷の違いも分かりやすいです。

スケール200%でMLAA OFFの時と、100%でMLAA ONの時のFPSの数値が一緒です。
また実際の画像についても大差ありません。
MLAAとスケールレンダリング(SSAA)では方式が違うのですが、ほぼ一緒の効果が見込めるって事になるかと思います。

両方掛けるもよし、どちらか片一方のAAを掛けるもよし。 その組み合わせによっては、低負荷で画質を上げることが出来るかと思います。
前の記事で色々と負荷についても書いてますが、スケールレンダリングが一番負荷が多く、次にMLAAが重いと思ってますので、このあたりの設定は負荷軽減に大きく寄与します。


かなり長文になりましたが、ETS2のグラフィック設定の解説は以上となります。
MLAA解説のスクショを提供してくださったうなちょさん、スクショ撮影にご協力くださった整備士さんに改めてお礼申し上げます。

やや駆け足の解説となりましたが、いかがだったでしょうか?
誤字脱字もそうですが、説明の間違いなどがありましたらコメントにてご指摘くださると助かります。

スポンサーリンク