« NVIDIA Inspector 覚書(おぼえがき) グラフィックス編 - Antialiasing セクション | メイン | NVIDIA Inspector 覚書(おぼえがき) グラフィックス編 - Common セクション »

2014年07月21日

NVIDIA Inspector 覚書(おぼえがき) グラフィックス編 - Texture Filtering セクション

その4、Texture Filtering セクションです。
細かい見栄えを左右する、テクスチャフィルタリング設定の部分となります。


Texture Filtering - NVIDIA Inspectorテクスチャとは3Dオブジェクト=キャラなり物体なりの表面に貼る布地のことで、貼り付けることそのものはテクスチャマッピングとよく言われます。

マッピング=手法はいろいろな方法が考案されていますので詳細についてはここでは割愛しますが、中でもテクスチャフィルタリングとは「その布地の貼り付け方の詳細部分」と考えていただければ。そう、「より高品質に、テクスチャを貼り付ける」ためのセッティングです。

もしもテクスチャがないとどんなゲームになるのか? ・・・については、名作・バーチャファイターなどが参考になると思います(同作はリミックス版でテクスチャマッピングを採用します)。

このあたりをうまくまとめられているのが、おなじみ西川善司さんのコラム。かなり昔(なんと10年前)の記事になるのですが、その時点ですでにわかりやすく簡潔にまとめられていますので、今でも読む価値は大いにあります。参考にしてみてください。

本項目を設定するのに必要な予備知識が、本ページにすべて網羅されているのです。10年経過した今も、特に新たな技法が制定されたわけでもないので、そのまま通用する内容となっています。

NVIDIAがATIに噛み付いた「テクスチャの異方性フィルタリング」ってなに?

言い換えれば「布地=素材を綺麗に見せるためのセッティング」となるため、「理由がない限り『すべて最高品位の設定を、できる限り目指す』べき項目」ともいえます。

当時のグラフィックスカードは非力だったこともあるため、ある程度妥協しなくてはならない部分もありましたけど・・・。今時のカードではここで設定を落とすようでは意味がない、とさえいえる部分だと思います。

そのため理想の設定は自ずと決め打ちとなりますが、まずはその部分を把握しておきましょう。


anisotropic filtering基本的に画質を追い求める方は「異方性フィルタリング(アニソトロピック フィルタリング / Anisotropic filtering - 略称で「AF」)」を用いることになります。

異方性(いほうせい)とは「物質の物理的性質、例えば弾性や屈折率などが方向によって異なること」を意味し、ここでは「テクスチャが、見る角度によっては原型とは異なる形のように見える」たとえと、とらえておけたらいいと思います。

取り上げている床のタイルですが、これも元々は平面の画像となっているはずですけど、ご覧のようにカメラの向きで斜めに見えるような状態になっているわけですね。自然と異方性を伴ったものを、目の当たりにしているわけなのです。


それましたが、その他細々とした設定も可能ではありますけど10年前のカードならまだしも、最近のGeForceシリーズ・・・Fermiアーキテクチャの400番台以降などであれば、そのモードで常用してしまいましょう、といえるほどになっています。

よほどご自身のカードにゆとりがない(x30/x40番台)ようなものであれば下げる選択肢もあるでしょうが、「手抜きをすれば、確実に見た目に跳ね返ってくる」のです。

anisotropic filteringこちらの静止画はその床の部分を原寸と、3倍拡大で切り出したものを並べていますが・・・いかがですか。原寸であればよほど目をこらしてみない限り、ぱっと見では大きな差異は感じられないでしょう。

それが3倍拡大にもなれば、「なるほど」という説得力を持つようになります。そう、木目のタイルが右側の画面では、奥に行けば行くほどぼやけているのです。これが「手抜き」の正体です。


「そこまで気にならないわ~」という方も、動画をご覧になれば沈黙されるのでは。

異方性フィルタリング 最適化の有無の様子(外部再生はこちら)

ムービー内にも記していますが、「動画は、静止画の連続」です。微細な信号の積み重なりが、大きな表現力となってくるわけです。最近話題の4Kテレビなどは、その代表格といえるでしょう(本サイトの場合東芝REGZA 58Z9Xを取り上げています)。

ですので、手抜きをするということは、ゲームで得られる最高の感動をも台無しにしてしまう、ということに他ならないことを覚えておいてください。あなたが遊んでいるタイトルに深い愛着が湧いたのであれば、カードの換装なども検討できるといいですね。上位モデルの「x70番台以降」であれば、一切手抜きなしでも性能低下は軽微なものにとどまりますので。上位カードはそういった部分にとても強いのです。

そして何よりも大きいのは、昨日のムービーでもお気づきになったと思いますけど「テクスチャフィルタリングの手抜き以上に、アンチエイリアシングにおける画質改善効果は、劇的なものがある」という現実。

つまり、高画質を追求する上でもその土台となるテクスチャフィルタリングについては、可能な限り高品位なセッティングを求められている、ともいえましょう。特にSSAA系といった「画面全体に及ぶアンチエイリアシング」は、「フィルタリングの精度にも品質が依存することになるから」、です。

アンチエイリアシングはパフォーマンスロスがとても大きいために万人にお勧めできるとは限らないのですが、テクスチャフィルタリングについてはそこまで大きいものでもなく、しかしながら確実に見た目に影響を及ぼすことから、まずはここから手直ししたいものです。

異方性フィルタリングの見栄えなどはこちらのGoogle画像検索結果でも参考にしてみてください。

では、設定部分を紹介しますね。


「Anisotropic filtering mode」

「異方性フィルタリングの動作モードをどうするか」となるのですが、上記コラムでも「異方性フィルタリングが現状最高品位を実現できる手法」と説かれていたはずです。

ゆえ、このモードを使いたい際は「User-defined / Off(ユーザー定義/オフ)」または「Application-controlled(アプリケーションに依存する)」のいずれかを用いることになります。

ゲームプログラム側に本設定項目がなければ、前者のUser-defined / Offを用いる点に気をつけてくださいね。


「Anisotropic filtering setting」

異方性フィルタリングの精度を決める項目になります。もちろん狙うべきは最上位の「x16」。ただしパワーの低いカード(末尾2桁が50未満)では相応に重たい処理系にもなりますので、解像度が高い場合には「x8またはx4」に下げるなどの工夫も考えておきましょう。

数字が高いほど「精度の高い演算を行う」ため、よりテクスチャを綺麗に表示できるようになります。そもそも「高画質を狙って手動設定を行う」ような人が、ここで品質を下げるようでは本末転倒といえましょう。

とはいえ、よほど厳しい審美眼をお持ちでもなければ x8 精度でも十分な品質はあるように感じますけどね。


「Prevent Anisotropic filtering」(前まではNo override ofと記載)

異方性フィルタリングの設定を防止する=上書きしない、という項目ですが、特定のタイトルの時のみビットを立てる項目になります。

普通は初期値:Offのままで問題ありません。「ユーザー設定を優先する」意味合いとなります。


「Texture filtering - Anisotropic filter optimization」

異方性フィルタリングの最適化を行うか、を意味する項目です。こちらをOnにすることで異方性処理を最適化=手抜きをするようになり、負荷を抑えられる仕組みとなりますが・・・。高画質を狙う人が、最適化を図る必要はあまりないように思いますので、できればOffで。

もちろん、カードのパフォーマンスが苦しい場合にはOnもありだと思います。見栄えなどを含め、ご自身の判断で選びましょう。


「Texture filtering - Anisotropic sample optimization」

上記異方性フィルタリングの最適化、のサンプル点抽出部分に限定した部分となります。先ほど「高画質を狙う人が最適化を図る必要はない」と記しましたけど、最近話題になっているのが「4K=UHD(Ultra High Definition) ウルトラハイビジョン」なる言葉。

解像度が従来のFull HD=1920*1080px程度なら x16 精度も十分使えたものですが、その4倍もの面積を誇る4K解像度(3840*2160以上)ではさすがに重荷になってきてしまいます。4倍の演算量ですからね。

そのような時にこちらをOnにすることで、サンプル点の読み出し方法を最適化します。超高解像度環境下の方でパフォーマンス低下が気になる方はチェックしてみるといいかもしれません。


「Texture filtering - Driver Controlled LOD Bias」

LOD Biasなる項目を「ドライバー側から制御するか否か」の部分となります。以下の「Texture filtering - LOD Bias [DX]/[OGL]」を設定したい際は On に、それ以外は Off のままで問題ありません。


「Texture filtering - LOD Bias [DX]」
「Texture filtering - LOD Bias [OGL]」

先日のお話で出てきた「Supersampling=スーパーサンプリング/画面全体をアンチエイリアシングする方法(SGSSAA含む)」時の「テクスチャのにじみやボケを、微調整=ピント合わせ」するような項目となります。

別になりますよ、としていた部分ですがこちらの値をいろいろ変えることで、ご自身の環境にあった見栄えに変化させることが可能です。

一般的には「2倍精度時で-0.5程度」「4倍精度時で-1.0程度」「8倍精度時で-1.5~-2.0程度」が目安のようで、詳細についてはこちらのサイトがよくまとめられていると思います。

SGSSAA - Natural Opinions


もしも「画面ににじみやボケ感が出ている」のであれば、「2x SGSSAAは-0.5前後」「4x SGSSAAや8~16xSは-1.0前後」「8x SGSSAA/32xSは-1.5~-2.0前後」を目安に、設定することで低減することが可能なパラメーターです。0.125刻みで調節が可能ですので、ご自身の目にあった設定を施しましょう。

見え方は人によって異なりますので、値は変わる恐れがあります。値としては「プラス方向に持って行くと先鋭化される代わりにノイズが出る」「マイナス方向に持って行くとジャギーは抑えられるもののボケ感が出やすくなる」といった感じです。

基本的にはマイナス側で調節することがほとんどのようです。言うまでもないですよね。「アンチエイリアシングはジャギーを抑えるための技術」、なのですから。

過去にこんな記事を載せてもいますので、ご参考に。

文字のかすれが気になる方へ - NVIDIA Inspector 1.94 LOD biasの調整


「Texture filtering - Negative LOD bias」

LOD Bias 全体の動き・振る舞い方をどのように設定しますか・・・といった項目のようです(詳細まではわかりかねます)。

NVIDIAコントロールパネルには「先鋭化する」とありますので、静止画時の見栄えを向上する項目のようです。反面、エイリアスが発生しやすくなるため要注意。

値としては「Allow」「Clamp」の2つがあり、前者が全般的におすすめ、後者は「異方性フィルタリングを使用時、最良の結果が得られる」とされています。

では、高画質化のためにはClampがいいのだろう・・・と思いがちなのですが、最近のドライバーのリリースノートには、こう記されているのです。


-Negative LOD Bias Clamp-
 Negative LOD bias clamp for DirectX applications is not supported on Fermi-based GPUs and later.

・・・つまり「GeForce 500番台以降(Fermi/Kepler/Maxwell etcetc...)では Negative LOD Bias Clamp はDirextX アプリケーション上においてサポートしない」とありますので、必然的にAllowが解となります。

これだけ重要な文言がありながら、コントロールパネルの表記は変わらないまま・・・。どちらが正しいのか、はっきりしていただきたいものですが。

私で厳しく見つめた結果でも、顕著な差は認められませんでしたので。Allowでいいと思います。


「Texture filtering - Quality」

テクスチャフィルタリングの品質項目。もちろん、特別な理由がなければ「High Quality」一択です。超高解像度環境下の方なら一つ下の「Quality」も検討する余地はあるかも知れませんけど、「テクスチャの表示方法で手抜きだけはさすがにしたくない」ところです。

性能が低めのカードの場合は「Performance」を用いることもあるかも知れませんが、ご自身の見た目で判断されるのが一番です。


「Texture filtering - Trilinear optimization」

テクスチャフィルタリングにおいて、「トリリニア法の最適化を行うか否か」の項目になります。こちらもできる限り手抜きなしの「Off」に設定しておきたいものです。

Onには作者さんも注意書きとして「will be ignored if using high quality(高品位を求める方にはおすすめしない)」と記されているくらいですし、ね。


∮ ∮ ∮

Texture Filtering 最高設定 - NVIDIA Inspector今回の項目のポイントとして「テクスチャフィルタリングにおいては綺麗に見せる設定はほぼ決まっている」ことから、高画質向けの設定も同様に「定石がある」ということです。こちらの画面のような設定が一番手抜きをしない、最上位の設定ということになりますけど・・・。

ストレスなく動かすには上位カードの利用、解像度もフルハイビジョン程度にとどまるものと思われます。4K解像度のような超高解像度環境下では、これだけでもパフォーマンスの低下が懸念されますので、ストレスなくなめらかに動かしたい際は、SLIによるカード2枚差し以上が必要になることでしょう。現状のカードでは単体は難しいように感じます。次世代カード・・・あと2、3年後あたりのものであれば、快適になるのでしょうか。今後に期待ですね。

いずれにしましても、3Dグラフィックスを綺麗に見せるためには、本項目はぬかりなくセットしておきたい部分です。


わかりづらい言葉となる異方性フィルタリング・・・も、要は「あらゆる角度から見ても、違和感のない、破綻の少ないテクスチャ表示をする方法」と考えていただければ問題ないと思います。

バイリニア、トリリニアなど手法はいろいろありますが、その頂点に現在君臨しているのがアニソトロピック=異方性フィルタリング・・・、となるのです。


『PHANTASY STAR ONLINE 2』公式サイト
http://pso2.jp/

From : lavendy | 12:30