目次 †
Oblivion Graphic Extender †
フォーラム情報:[WIP / REL] Oblivion Graphics Extender Thread 37 [2011/07/22~]
このコンテンツは「これから」が本番なので、非常に更新頻度が高くなるかと思います。
情報その他、どしどし書き連ねて下さい!
- Oblivion Graphic Extender について
OBGE こと、Oblivion Graphic Extender では、様々な画面効果を新たに適応させる事ができます。
処理の多くは PC の VGA パワーに依存し、FPS に直結して影響が出やすいですが、得られる画像効果にはダイナミックで素晴らしいものが多くあります。
基本概念で忘れてはならないのが、Anti-Aliasing が使えなくなる事です。
これは導入に際して大きな選択肢の一つになりますので、各自判断の上、ご利用下さい。
バージョン情報:OBGE Core Version3.0.1 [2011/06/25]
必須環境:OBSEv20 以上, ShaderModel3.0対応のグラフィックソリューション, 最新のDirectX [2011/04/18]
Oblivion Graphic Extender Version 3.0.1 をベースにして紹介します。[2011/07/31]
- Mod概要
まだまだ Work In Progress (WIP) な感も否めませんが、親しまれてきた OBGEv2 が大きく刷新され Version 3 となって登場しました。
呼称は OBGEv3 なのでしょうが、コアとなる DLL は相変わらず OBGEv2.dll であり、いささか混乱しがちです。
( OBGEv3.dll と名称変更してしまうと、OBGEv2.dll という名前を参照する旧 Shader に対応出来なくなるからだとか)
Oblivion Graphic Extender v2 自体、さらに v4.2 などとなっていたので、場合によっては「Verダウン?」とすら錯覚してしまいます。
まずは今までのことはリセットして、バージョン表記を捉える必要がありそうです。
- 簡単な変更点紹介
大きなメリットとして、これまでとはエフェクトの乗せ方(描画のタイミング)を変えた点です。
今までは、例えば NightEyeShader や、MagicEffectShader と描画がぶつかってしまい、OBGE 側のエフェクトが乱れてしまう場面がありました。
今回の更新でこの点が解消された事により、ゲームプレイとも両立しやすいエフェクト環境になってきたとも言えると思います。
(もちろん、OBGE が提供するエフェクトの負荷で「プレイどころではない!」という事もありますが)
一方でこうした変更は OBGEv2 で使っていたエフェクト環境をそっくりそのまま Version 3 へ移行する事を妨げる要因の一つでもあり、
今現在では両立させるにはいくらか OBGE.ini を独自の設定にしたり、或いは Shader(.fx) 自体を書き換える必要性が出てきますので注意してください。
同時に、各自のグラフィックス・ドライバの設定如何も、エフェクト実装への重要な要素になってくる場合があります。
OBGEv2 環境には、Oblivion Graphics Extender Support.esp の使い勝手を改良させた Controller Patch もありましたが、これは使えなくなります。
ゆえに shaderlist.txt による管理か、Oblivion Graphics Extender Support.esp による実装を行わねばなりません。
(正直 Oblivion Graphics Extender Support.esp は、現時点では全然サポートしてくれていない感があります)
また、Anti-Aliasing は無効となる点は相変わらずですが、強制的に有効にさせた際には描画が崩れる場合があります。
特に導入に際して、既に OBGEv2 を利用している方はこうした点を踏まえて乗り換えるかどうか決めてください。
極端ですが、「 OBGEv2 とは別物!」と捉えた方がトラブルを未然に防げるかと思います。
インストール †
- OBGEv2 を使っていた場合
まず、これまでに OBGEv2 ないしは OBGE(v2の前身) を利用していた方は、一切の OBGE リソースをアンインストールしてください。
セーブデータは、OBGE データの含まれていない状態にクリーンセーブしてからの導入が安全です。
特に OBGE.ini は、旧版のものをしっかり削除・退避させておいてください。
- Core の選択
TESN には Core と Core Retro の二つがありますが、基本的には Core の方がメインと捉えてください。
Retro 版はその名の通り、やや OBGEv2 に近い動作(描画処理)をすると思って下さい。
パフォーマンスを稼ぐ代わりに、いくらかの新機能をオミットしていますので、この辺りはご自身で優先度をつけて選択してください。
(簡単な例では、Liquid Water v2.0 で波打ち際の描画が変わります)
ここでは、Core 版を想定していきます。
- インストールデータ・方法の確認
WryeBash による BAIN インストールが推奨されています。
ダウンロードしたアーカイブファイルをそのまま BAIN に使えますが、OBMM でも管理可能です。
以降は便宜上、BAIN で使うアーカイブも、OMOD ファイルもインストールパッケージと書かせて貰います。
同時に、BAIN や OBMM を必要十分に扱える程度の知識・経験を前提にさせて貰います。
Extras には、「特定環境の為」に d3dx9_31.dll が用意されていますが、通常は使用せずとも OK です。
OBSE、Shaders、Textures の 3 つのフォルダを、ご自身が慣れ親しんだ方法でインストールしてください。
OBGEv2 から目新しいのは、Shaders 以下に新しく include、override という 2 つのフォルダが追加されています。
実行動作に必要なファイルですので、漏れなく導入してください。
慣れている方は、「 Shader 類の fx も纏めてしまおう! 」 とお考えになるかと思いますが、
はやる気持ちは抑えて、いったんここまででインストールパッケージを作成した方が良いと思います。
(単なる経験談ですが、最低限動作チェック完了後に纏めてインストールパッケージ作成した方が問題把握・切り出しが楽です)
- 起動と OBGE.ini の確認
Core ファイル類のインストールを終えたら、ひとまず Oblivion を起動してみましょう。
指定の場所に OBGE.ini が作成されていると思いますので、付属 Readme に目を通しつつキチンと出来たか確認してください。
- Standalone Effects のインストール
続いて、実際に画面効果を施すシェーダー類をインストールします。
TESN にある Standalone Effects には、良くも悪くも多種なシェーダーが一纏めになっています。
既に目的のシェーダー効果が判っていて個別導入をする場合には、予め必要なファイルだけを選び出してインストールパッケージを作成して下さい。
良くわからない場合には、無理に選定せずにひとまず全てをインストールパッケージにしてしまうのも手です。
(データ容量の無駄は発生しますが、シェーダーに必要なリソースファイル不足は避けられます)
- エフェクト適用の確認
一度起動し、OBGE.ini が無事に作成されている事を確認出来たら、実際にゲーム中で使いたいエフェクトを適応にしましょう。
エフェクト適応に際して、Oblivion Graphics Extender Support.esp は、完全に対応しているとは言いきれず、shaderlist.txt による管理がベターです。
(余談ですが、こうしたゲーム中でもリアルタイムでエフェクト管理を行うのが厳しくなってきたようです)
shaderlist.txt の書き方は、OBGEv2 同様に記載順序に注意して下さい。
動作がおかしい!そんな時のために †
- 転ばぬ先の杖
エフェクトは、ひとつひとつ順を追って適応させてください。
グラフィック環境により、動作が異なる場合もあります。
一気にアレやコレやと使ってしまうと、「あれ?どうしてこうなった?」となった際に、復旧が困難になります。
(実際、大変でした)
- グラフィック・ドライバの設定を見直す
- AMD/ATi : Catalyst 11.x
- Catalyst Control Center で、Catalyst A.I.「表面フォーマット最適化を有効にする」の、チェックを外す(オフ)。
オンの状態では、DoF 類や SSAO類と、Godrays などが併用できない場合があります。
- NVIDIA
- 現時点での注意
- shaders/override の削除漏れ
OBMM にしろ BAIN にしろ、shaders/override にインストールされたファイルが正しくアンインストールされない場合がありました。
環境要素とも思えますが、残ったファイルは予期せぬ誤動作を呼びますので、「おや?」と思ったらご確認下さい。
バージョン情報:OBGE Standalone Effects v3.0.1 [2011/06/23]
必須環境:Oblivion Graphic Extender Version 3
- Mod概要
Oblivion Graphic Extender が提供する、画像効果のファイル群です。
これが無いと、「OBGE 導入したよ!」と言っても得られるものは何もありませんのでご注意下さい。
Standalone Effects の簡単紹介 †
どの演出効果でも、複数のファイルがあります。
各々演出方法が異なりますので、是非お好みのものを探してみて下さい。
一部のものは OBGE Version 3 に合わせて書き換えられていますが、OBGEv2 時のままのものも多くあります。
(ある程度下位互換は図られているようです)
とは言え、基本的にはこのパッケージに同梱されているシェーダーを利用し、.fx を開いて、ご自身で判断がつく場合のみ、OBGEv2 時のシェーダーを使うようにして下さい。
- 光の演出効果
- Godrays (v5.3) - Godrays.fx
お馴染みとなった、太陽からの光芒を演出します。
- Volumetric Screen Space Indirect Illumination - Volumetric_SSII.fx
光が当たっているであろう場所での反射光を演出します。
- Volumetric Screen Space Global Illumination - Volumetric_SSGI.fx
光が当たっているであろう場所での反射光と、光が届いていないであろう場所への陰影付与を行います。
上記 Volumetric_SSII と、後述 Volumetric_SSAO を合わせたものです。
- 環境陰影効果
- Ring Screen Space Ambient Occlusion - Ring_SSAO.fx
環境光が遮蔽され、暗くなっているであろう場所を演出します。
- Horizon-Based Ambient Occlusion - HBAO.fx
環境光が遮蔽され、暗くなっているであろう場所を演出します。
- Volumetric Screen Space Ambient Occlusion - Volumetric_SSAO.fx
環境光が遮蔽され、暗くなっているであろう場所を演出します。
- 被写界深度効果
- Crysis Depth Of Field (v1) - CrysisDoF.fx
Crysis (ゲーム名) での被写界深度を再現しています。
- Depth of Field (v7) - DepthOfField.fx
簡易な被写界深度を再現しています。
- Hexagonal Bokeh Depth of Field - Bokeh_Hexagon_DoF.fx
細かい被写界深度を再現しています。
- Circular Bokeh Depth of Field - Bokeh_Circle_DoF.fx
細かい被写界深度を再現しています。
- Pseudo-Bokeh Depth of Field - Pseudo_Bokeh_DoF.fx
細かく設定出来る被写界深度を再現しています。
- 色調変更
- Bleach Bypass - HLSLbleachbypass.fx
白とびを抑えるようなコントラスト効果を付与します。
- Color Grading - HLSLColorGrading03.fx
褪色させます。
- Color Effects (v5) - ColorEffects.fx
彩度・明度の数値調整、ガンマ値による調整などが出来ます。
- Crysis Color Mood (v0.2) - ColorMood.fx
Crysis. (ゲーム名) のような色調を再現します。
- ENB Color Effect (v2) - ENBColorEffect.fx
彩度・明度などを変更させます。
- フィルター・Anti-Aliasing 効果
- Normal Filter Anti-Aliasing - NormalFilterAA.fx
Anti-Aliasing 効果を再現します。
やや縁が若干滲んだようになってしまいます。
- Morphological Line-Antialiasing - MLAA.fx
Anti-Aliasing 効果を再現します。
適用出来ない部分こそあれ、安定してエッジを滑らかにします。
- 同梱版は0.0.2の様子。
0.0.4の方が負荷低減が図れそうです。
Effects Textures は、Standalone Effects 付属の .dds を使ってください。
- Directional Localized-Antialiasing - DLAA.fx
Anti-Aliasing 効果を再現します。
- Morphological Directional Localized-Antialiasing - MDLAA.fx
Anti-Aliasing 効果を再現します。
MLAA と DLAA の合わせ業のようです。
- FX-Antialiasing - FXAA.fx
Anti-Aliasing 効果を再現します。
- その他の効果
- CelShader+EdgeAA (v0.3) - CelShader+EdgeAA.fx
エッジライン(縁・輪郭)に対して演出を行います。
- Sharpen - obsharpen.fx
画面全体に対してシャープネス効果を与えます。
- Vignetting - HLSLvignette.fx
画面四隅をやや暗く、中心円をくりぬく形で影を付与します。