スポンサーサイト

Posted by なる on --.-- スポンサー広告
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Oblivion Graphics Extender v2

Posted by なる on 14.2011 ツールの説明 15 comments 0 trackback
2011/05/14 更新
OBGE Controller 勝手にパッチ4.2 +ヘルプ日本語化 +MLAA +設定のインポート/エクスポート対応のリンク追加。

2011/03/29 更新
OBGE Controller 勝手にパッチ4.2のリンクに変更。

2010/12/01 更新
OBGE Controller 勝手にパッチ4のリンクに変更。

2010/11/23 更新
OBGE Controller 勝手にパッチ3のリンクに変更。

2010/11/19 更新
kapaerさんの OBGE Controller 勝手にパッチ2 で
ini 設定も出来るようになったのでファイルをそちらに。

2010/11/17 更新
kapaerさんの OBGE Controller 勝手にパッチ をちょっと弄らせてもらいました。
その他、shader による負荷実験の結果など追記。

2010/11/14 初回公開



前回の雑記に追記しようかと考えたけど独立させてしまおう…
雑記って適当に思いついたのを手軽に書けるんですけど、埋もれちゃうと自分でも情報探すのが大変に(・・`)

大部分は【雑記 -其の12- (OBGEv2 その他)】で書いてる内容と被ります。

Oblivion Graphics Extender v2 (以下OBGEv2)。
zk1401.jpg

●説明

実は wiki に詳しく書いてあります。(ぉ
【Wiki:Oblivion Graphics Extender v2 & Shader Pack
と丸投げは酷いのでほぼ同じ内容ですが…

OBGEv2 は Shader と呼ばれる機能を使っています。

wikiより抜粋【シェーダ
主にライティング(光源計算)・シェーディング(陰影処理)とレンダリング(ピクセル化)を実行するためにグラフィック リソースに対して使用するソフトウェア命令の組み合わせである。"shade"とは「次第に変化させる」「陰影・グラデーションを付ける」という意味で、"shader"は頂点色やピクセル色などを次々に変化させるもの(より具体的に、狭義の意味で言えば関数)を意味する。

Shaderは色々な機能があり、色に変化を付けるものや、遠くをぼかして遠近を強調するものなど様々。
1つ1つの Shader に対して使う使わない、設定の変更が細かく指定できるのも特徴です。

NormalFilterAA.fx の On / Off
zk1416.jpg zk1417.jpg

ようするに光の演出を色々と強化すると思ってもらえればいいかな。
上の SS は主に Godrays の効果です。(日差しの効果 UP)

なのでカメラでの演出を色々と付けることが出来るようになります。
1つ1つの Shader を細かく設定できるのでリアルぽくもできますし、
見た目派手にしてフォトショップ的な演出することも可能です。


●必要環境と注意点
PC環境としては ShaderModel 3.0 が使えるグラフィックスカードでないとだめです。
使用している PC が対応しているかの確認と Oblivion で使用できるようにする方法は此処を。
Shader3.0 をキチンと使う方法

Shader を使えば当然、処理が重くなります。
(使用する Shader や設定により重さはまちまち。NVidia では Radeon より重くなるそうです)


<参考>
CPU E8500 @3.16GHz
GPU HD4870 2GB Cata10.8
Window表示 1280 * 1024 (つまり AA は切れます)

右上の表示は CPU使用率, 空きビデオメモリ, 空きテクスチャメモリ, GPU使用率
FPS のブレ は 下に書きました。 20-21 の場合、 FPS20 と FPS21 をうろうろしてるという意味で。

shader : 無し
OBGE107.jpg
FPS 20-21 , GPU使用率 38%

shader : NormalFilterAA,CrysisDoF,Boken Dof,Godrays
OBGE108.jpg
FPS 20-21 , GPU使用率 52%

shader : 全部
OBGE109.jpg
FPS 17-18 , GPU使用率 96%
※この状況見ると少なくとも FPS に大きな差は出てきません、GPUめっちゃうるさくなりますが( ̄□ ̄;)

AA をかけることが出来なくなります。(MLAA という Shader を使うことで擬似的な AA をかけられます)
(Radeon HD4xxx 系以上、Cata10.8 以上、フルスクリーンのみ OBGEv2 と AA を併用できるようです)
(NVidia では今のところできるという報告無し?)
※その為最近 Blogの SS がフルスクリーンなのです(・・`)
※私は HD4870 + Cata10.8 を使用しています。
※上記環境でも AA が切れる場合。
ATI Tray Tools を使用している場合、ATI Tray Tools を終了。
CCC 起動、グラフィックの設定をどこか変更して「適用」、また元に戻して「適用」
これでたぶんできるはず。
もしくは ATI Tray Tools を終了後に ATI Tray Tools を起動でもいけるかも。

Cata10.8 にすると Nifskope でウィンドウ部分をクリックすると Nifskope が不正終了します。
※ドライバで AA を「アプリケーションによって設定」と(AFももしかしてら必要かも)
Nifskope の Render → Setting... にある、左下の Anti Aliasing と Shaders 両方チェックを外すことで
不正終了しなくなります。
※ ちなみに Cata10.3 でも Nifskope は不正終了していました。
レジストリの掃除とか 3GB スイッチとか

OBSE v0019 以上が必要です。
OBSE v0019
※OBSE v0019b 以上を使ってください!

DirectX が古いと駄目です。
OBGEv2_Core の中に Extras フォルダがあり、その中に

d3dx9_31.dll
d3dx9_41.dll

があります。
上手く動作しない場合、このファイルを Oblivionフォルダにコピーするといいようです。
※通常この作業は必要ありません。

●インストール
※2011/03/29 現在の話で今後変わる可能性があります。
Nexus から OBGEv2_Core-30054-4.7z と OBGEv2_Shaders-30054-4-2.7z を DownLoadします。
Oblivion Graphics Extender v2

OBGEv2_Core-30054-4.7z の中の『OBSE』『Shaders』フォルダと
OBGEv2_Shaders-30054-4-2.7z の中の『Doc』フォルダを除いたものを導入するように纏めます。

OBGE114.jpg
こんな感じに。

あとはこれを omod化して導入します。
OBGE Controller 勝手にパッチが非常に優秀なのでこれも導入します。
なお、新しい version では下で書いている、水面で体が消えるバグは無くなってます。
(同梱されてる dll が 0b59835de18f7ae1828644c4ab45b72d *OBGEv2.dll になりました)


●インストール
OBGEController v4.2用 (OBGEv2v4.2 正式版用)

OBGE_Controller_with_export.zip
※特に理由が無ければこちらを使用してください。
OBGE Controller 勝手にパッチ4.2 + ヘルプ日本語化 +MLAA +設定のインポート/エクスポート対応版です。

英語版 OBGE Controller 勝手にパッチ5.0
※中見てないんですけどたぶん OBGE_Controller_with_export と変わらないんじゃないかな…

MLAA v0.0.4 finalRelease
擬似的に AA をかける Shader。
個人的に必須 Shader。

作者の kapaerさんのサンプル SS をお借りしています。
OBGE_MLAA_Shader_003.jpg
※以前は 8Bit でしたが v0.04 では 6Bit になっています。
※8 と 6 で差は判らないですねぇ…負荷は6のほうが軽くなってます。
勿論、OBGE Controller 勝手にパッチ で対応しています。
OBGE115.jpg

コンパイル済みの Shader があるのでこちらを使います。
※ロードなどか速くなります。
OBGEController_for_v42\data\Shaders\precompiled フォルダの中に Shader があるので
これを全部コピーして
OBGEController_for_v42\data\Shaders フォルダに貼り付けます。

そしたら『legacy』『precompiled』『source』フォルダは削除でOk。
あとは、OBGEController_for_v42\data 部分を選択して omod化します。
Shader の上書き警告がでますが全部上書きで。

マスター指定しているサポートプラグイン(Oblivion Graphics Extender Support.esp)
の下に必ず置いてください
サポートプラグインも必ずONにしてください

そして、メニュー表示用に手動でxmlファイルを書き換えます
Data\menus\main\hud_main_menu.xml をテキストエディタで開いて、2行目の
<menu name="HUDMainMenu">

の下に、以下の1行を追加します

<include src="OBGEController\OBGEController.xml" />
※ブログの性質上 "<" と ">"は全角です。ここからコピーせず readme からコピーして下さい!
これで完成です。

PageUPキーで 右上に Shader が表示されます。
↑↓ で Shader の選択切り替え
←→ で Shader の On/Off

PageDown で選択している Shader の細かい設定ができます。
詳しくはOBGE Controller 勝手にパッチのれどめで。

以下旧記事。


※2010/11/14 現在の話で今後変わる可能性があります。
Oblivion Graphics Extender v2 から

OBGEv2 Core
OGE Shaders

の2つを DownLoad します。

下の Dll も DownLoad します。
OBGEv2.dll (OBGEv2v3 Fix版) (MD5値 0b59835de18f7ae1828644c4ab45b72d )

圧縮ファイルを解凍します。
omod 用のフォルダを作成し、

OBGEv2 Core から OBSE フォルダと Shaders フォルダを。
OGE Shaders から Shaders フォルダ と Oblivion Graphics Extender Support.esp をそれぞれ omod 用のフォルダにコピー。
OBGEv2.dll を OBSE\Plugins フォルダ にある同名のファイルに上書きします。

※2010/11/23
Oblivion Graphics Extender v2 の esp に CTD する Bug があるみたいです。
Shaders の値を変更するときのページ画面で問題があるみたい。
FixEsp
おそらく下にある、OBGE Controller 勝手にパッチ を使えば FixEsp にしなくても問題ない話だと思います。
※この辺の設定は OBGE Controller 勝手にパッチ 側が独自の仕様の為、影響を受けないはず。
※ OBGE Controller 勝手にパッチ が非常に優秀なのでこれも使うことをお勧めします。

※2010/11/20
Bokeh_DoF.fx が単体で verup したみたいです。
※Shadersフォルダの同名ファイルと入れ替えてください。

何故 OBGEv2.dll が必要なのかというと OBGEv2 Core にある、OBGEv2.dll に bug があるからです。
※判りにくいかもしれませんが、本来座っているので体で見えないはずの椅子が見えています。
※水面下の体が描画されていないということです。
zk1411.jpg zk1412.jpg
6f28b64e55270df669270589d950ac6b *OBGEv2.dll / 0b59835de18f7ae1828644c4ab45b72d *OBGEv2.dll

MD5値
0b59835de18f7ae1828644c4ab45b72d *OBGEv2.dll (OBGEv2v3 Fix版 dllのversionは2.0.0.0と表記される)
6f28b64e55270df669270589d950ac6b *OBGEv2.dll (OBGEv2v4付属 dllのversionは3.0.0.0と表記される)

これはその内、直されるとは思います。

あとは Omod用フォルダを Obmm で導入すれば Ok。


※ロード時間が長い問題。
OGE Shaders の ssao_perf.fx と ssao_test.fx 入れてると何故か Load が遅いんです。
雑記にも書いてたのですが
Shader_Pack_for_version_3-30054 のファイルで上書きすると改善します。
まあ気にしすぎかもしれませんが…
※ Shader_Pack_for_version_3 は 旧version の Shader Pack で今は DL 出来ないみたいです。

Shader_Pack_for_version_3-30054 を所持していない人は下を使ってみてください。
ssao perf fx shader for OBGE-UPDATE

この中にある、ssao_perf.fx を代わりに使用します。
ssao_test.fx はないので、ssao_perf.fx を複製して名前を変更します。

ssao_perf.fx
⇒ ssao perf fx shader for OBGE-UPDATE の ssao_perf.fx で上書き。

ssao_test.fx
⇒ ssao perf fx shader for OBGE-UPDATE の ssao_perf.fx を ssao_test.fx にして上書き。

要するに2つとも同じファイルです。
当然効果はどっちも同じものになりますがこれでロードが改善されました。
基本的に ssao_test.fx は使用しないでください。


●使い方

アイテムに 「OBGEv2 Support」が追加されてるのでこのアイテムをクリック。
※COBL を導入してる場合、アイテム欄の[+Option]の中に 「OBGEv2 Support」があります。
OBGE101.jpg OBGE102.jpg

インベントリ画面を閉じると設定画面が開くので...
OBGE103.jpg

使いたい Shader を ON/OFF してみてください。(ON は + , OFF は - で表記されます)
Shader を ON にするには 左Shift キーを押しながら Shader 名をクリック。
Shader を OFF にするには 左Ctrl キーを押しながら Shader 名をクリック。
キーを押さずに Shader 名をクリック すると各種設定画面が出るので調整してみてください。


●もう少し調整しやすくしたい

kapaerさんが使いやすくした、サポートプラグイン。
OBGEController v4用 その4(修正版) (OBGEv2v4 正式版用)

OBGE104.jpg

NormalFilterAA.fx の On / Off
OBGE105.jpg OBGE106.jpg
※画面を見ながら操作できるので変化が判りやすいのです。

その3 から DoF のフォーカスの位置を簡単に設定できるようになりました。(緑色の マークがフォーカスの位置)
OBGE110.jpg OBGE111.jpg

もう少し遠くにフォーカスしてみたものとの比較
OBGE112.jpg OBGE113.jpg

以前は 3rd視点で DoF を使用していると、画面の真ん中にフォーカスがあってプレイヤーがぼやけ、
見辛かったのですが、プレイヤーの背中にフォーカスが来るよう調整することで違和感無く見えるようになりました。


●インストール
とりあえずは通常通りDataフォルダ以下にコピー
マスター指定しているサポートプラグイン(Oblivion Graphics Extender Support.esp)
の下に必ず置いてください
サポートプラグインも必ずONにしてください

そして、メニュー表示用に手動でxmlファイルを書き換えます
Data\menus\main\hud_main_menu.xml をテキストエディタで開いて、2行目の
<menu name="HUDMainMenu">

の下に、以下の1行を追加します

<include src="OBGEController\OBGEController.xml" />
※ブログの性質上 "<" と ">"は全角です。ここからコピーせず readme からコピーして下さい!



Data\ini\OBGE Controller.ini の設定を書き換えることで

PageUp メニューのON/OFF
PageDown シェーダー選択モード/シェーダー設定モードの切り替え
↑・↓ カーソル移動
←・→ シェーダーON・OFF、値の増減(0.1刻み)

のキーを変更できます。

例)
set zzOBGECoreQ.modeKey to 201 ;初期値201 PageUP

これを
set zzOBGECoreQ.modeKey to 24 ;初期値201 PageUP

とすると メニューのON/OFF キーが PageUP から O キーに変ります。
キーの数字は ini ファイルの下を見て各自入れ替えてください。


>値の増減は、Altで0.001、Ctrlで0.01、Shiftで1刻みで操作できます
この部分は変更できません。

必要ないかなとおもったので…

どうしても変更したい人は scn zzOBGECoreQS の中に

let resultcode := keyCode
elseif (keycode == 42 || keycode == 54) ; shift
let shiftCtrl := 10
elseif (keycode == 29 || keycode == 157) ; ctrl
let shiftCtrl := 0.1
elseif (keycode == 56 || keycode == 184) ; alt
let shiftCtrl := 0.01

といった記述があります。
この中の keycode == XX の数字を変更すれば任意のキーに変わります。


副産物としてすでに Oblivion Graphics Extender Support.esp を使っている savedata だと
キーの初期化がされないため、一旦 Oblivion Graphics Extender Support.esp を外して save する手間がありましたが
それをしなくてもすぐに使用できます。

※ ini設定版 の副産物がこの記述でした。
> すでに OBGE を使用している Save では上手く動かない可能性が。
> ※私はこれに嵌りました。キー押しても UI 出なくて…

> その場合、一旦 Oblivion Graphics Extender Support.esp のチェックを外して Oblivon起動、Load。
> そのまますぐに save して Oblivon 終了。
> Oblivion Graphics Extender Support.esp と OBSE Controller2.esp をチェックして Oblivion 起動でたぶん動きます。

○ Comment

次はOBGEとか思ってた矢先のこと。

昨日アレから後もう一時間とか思って遊んでると、
PCの画面が突然きらびやかなモザイクに。

どうしようもなくPC再起動、
ブルースクリーンでOS起動できず。
セーフモードでもセーフモード+コマンドプロンプトでもブルースクリーン。

ビデオカードが死んだのか、ハードディスクが死んだのか(T-T)

とりあえず働いてくるよ。。。
2010.11.15 13:50 | URL | 15jam。 #mQop/nM. [edit]
OBSEを初めて入れてみたんですが、書いてあるとおり入れたつもりが水面で下半身が表示されない…
試行錯誤してみたんですが、全く改善されないので、ひょっとしてファイルがおかしいのかと思い立ちMD5を確認。
すると「OBGEv2 Core v4」と「OBGEv2 v3」のOBGEv2.dllのMD5が両方とも
『6F28B64E55270DF669270589D950AC6B』なってます…
これじゃどうにもならないですよね…?
2010.11.15 16:12 | URL | m #- [edit]
15jam。さん、こんばんは

ディスプレイドライバの応答停止だとGPU絡みじゃないかなぁ…
BSOD は STOP Error で調べると大体の原因が判るかも

mさん、こんばんは
ありゃ、書く前に調べたつもりだったのですが…
元々 OBGEv2 v3 でも同じ Bug はあったのですがその後 Fix された Dll がフォーラムで公開されてます

その Fix.dll が MD5値 0b59835de18f7ae1828644c4ab45b72d なんです
フォーラムにある。Fix.dll の Link を記事に付け足したのでその dll に入れ替えてみてください
さっき DL して確認したので大丈夫なはず…
2010.11.15 16:53 | URL | なる #- [edit]
おお、fix版なんかがあったとは!
早速入れてみましたら水面でも正常に下半身が表示されるようになりました。
まぁ使えるようにはなったものの、自分はnvidiaのグラボなんで
あまり活躍がなさそうな気もしますが(笑)
とにかく解決策ありがとうございました。
2010.11.15 18:25 | URL | m #- [edit]
直りましたかーよかった(≧∇≦)ノ

というかちゃんと確認して書けよってことですね( ̄□ ̄;)
どうも解凍したフォルダに Fix版の dll 入れちゃってたみたいです

それを忘れて書いてるときに、v3 は Fix されてるんだなぁと勘違いを...
指摘ありがとうございました
2010.11.15 21:53 | URL | なる #- [edit]
なる様、初めまして。

OBGEの解説ありがとうございます。
おかげさまで不具合無く画面の変化を楽しんでいます。

ところで、CPU使用率, 空きビデオメモリ, 空きテクスチャメモリ,
GPU使用率の表示は何を使われてますか?(OBGE107~109.jpeg右上の表示)

最新のATTだとビデオメモリ系の表示がダメみたいなので、
RADEONのビデオメモリ使用量がわからないので・・・
(あ、DST13 DTDで概略はわかりますが)
2010.11.21 09:44 | URL | cajhon #- [edit]
cajhon さん、こんばんは、初めまして

えーとあの表示はそのATTで出してます。
version確認したらv1.6.9.1486でした。
試しに最新のv1.7.9.1528にしましたが表示してます

ただ、verあげたらたまにメモリ表示してないときも
でも随時でないってことはないです

あまり解決につながらないと思いますが( ̄□ ̄;)
2010.11.21 18:59 | URL | なる #- [edit]
>>なる様

ご回答ありがとうございます。
ATTのリドミ読み直したところ、
VISTA以降は出来ない旨、記載がありました。

お手数をおかけして申し訳ありませんでした。
2010.11.21 23:12 | URL | cajhon #- [edit]
cajhonさん、こんばんは

OSによって変わるんでしたか...
報告ありがとうございます(≧∇≦)ノ
2010.11.22 08:58 | URL | なる #- [edit]
>Shader_Pack_for_version_3-30054 を所持していない人は下を使ってみてください。
>ssao perf fx shader for OBGE-UPDATE

とありますが、このリンク先のtesnexusですでにファイルが消えているらしくエラー表示になります。なんとかShader_Pack_for_version_3-30054を入手することはできないでしょうか?

ssao_perf.fx と ssao_test.fxがあるとロードが長いと書かれていますが、本当に長いですね、OBGEV2をインストール後初めて起動させたときはハングアップしたかと思いました……。
2010.11.29 21:41 | URL | 守山刹那 #- [edit]
守山刹那 さん、こんばんは

リンク先消えてますね...
再アップって色々とトラブルになりそうなので、
基本的に自分のもの以外あげないようにしてるんです
これは【はじめに】このサイトについてでも書いてる内容になります

一応、代替として ssao の Shader だから他の ssao で代用できるかなぁーと
Ring_SSAO.fx の名前をリネームして試してみました

ssao_perf.fx,ssao_test.fxどっちもいけるぽいです
※CTDせずにOblivonを起動できて ssao_perf.fx,ssao_test.fx を有効にしても落ちなかったという程度

ssao_perf.fx,ssao_test.fx 使わないなら Ring_SSAO.fx で代用いけそうです
ロードの遅延も起きなかったですし

dll もそうですが同梱ファイルの基準判らないですね…
※dll は昨日辺り、フォーラムで言われてました

2010.11.30 00:23 | URL | なる #- [edit]
こんばんは、なるさん。

そうですね、確かに再アップはいろいろ問題となりそうですね。わざわざ検証どうもありがとうございました。
ssao_perf.fx,ssao_test.fxは影がつきすぎて使用するつもりなかったので、Ring_SSAO.fxのリネームを試してみます。

ところで、DoFなのですが、OBGEのV1の頃から比べてかなり被写界深度が深くなっているような気がするのですが、DoFをかけてみてもかなり遠くがぼやけているくらいであまりかかったという気がしません。視界の端っこ(画面の四隅)もかなりきっちりピントが合っているように見えました。
また、BokehDoFは一人称視点の時はましなのですが、三人称視点だと自キャラとその直近のみにピントが合っていてそれ以外がぼけぼけなので被写界深度が浅すぎる気がします。いろいろ調整してみたのですがどうもいい感じになりません。
被写界深度はOBGEのV1でのDoF(V2の頃)が一番よかった気がしています。

なるさんはどのような値に調整していますか?
2010.11.30 23:19 | URL | 守山刹那 #- [edit]
私はデフォルトのままです

普通のDoFならそんなにピンボケしないのでそれで
ただ、目が疲れてくるとDoFは切ってしまってます、割と酔いやすいですし(・・`)
参考にならなくてすいません
2010.12.01 21:56 | URL | なる #- [edit]
初歩的な質問なのかもしれませんが、失礼致します・・・。
先日、OBSEをv0019bへアップデートしたのですが
以前のバージョンでは問題なく使えていたOBGEコントローラーですが
数値を弄ると「tm」コマンドを入力したかのようにインターフェイスが消えてしまいます。
コンソールからtmコマンドを入力すれば直りましたが・・・。

OBMMより、OBGEv2&OBGEコントローラーのチェックを外す&セーブ、
その後再チェックでロードをしてみても状況変わらず・・・でした。
2011.01.29 04:32 | URL | 名無し #mQop/nM. [edit]
名無しさん、こんばんは

OBSEのverupと関係ない気がします
tmで表示されるなら何かキーでtmが割り当てられるMOD入れてるとかしか思いつかないかなぁ
うちはOBSEv0019 ⇒ OBSEv0019bと乗り換えてますが問題ないです
参考にならなくてすいません
2011.01.30 12:58 | URL | なる #- [edit]

○ Post comment


  • 管理者にだけ表示を許可する

○ Trackback

trackbackURL:http://narulivion.blog46.fc2.com/tb.php/231-cc3ff8d4
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。