スポンサーサイト

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

NIF のゴミをやっつけろ!

Posted by なる on 25.2009 ツールの説明 14 comments 0 trackback
※今回の説明はある程度、Oblivion と PC 操作が判る人用です。
説明を読んでも判らない場合は実施しないでください。
取り返しが付かなくなっても責任を持つことは出来ません。




よく判らないタイトルですが、気にしちゃいけない。
前回の伏線で引っ張った内容です。

test01

と偉そうに始まったんですがすいません、内容は私が書いたものでは有りません。
また例の如く某所にて書き込まれた内容なのです。

そこで非常に判りやすい説明テキストがあり、また配布もご自由にという太っ腹さに甘えてテキストの内容をそのままペタリとさせて頂きます。
お名前が判りませんがためになる情報をありがとうございます。



●此処からテキスト
Operation Nif Optimization

http://cs.elderscrolls.com/constwiki/index.php/Nif_Optimization
PythonとPython用に組んだスクリプトを使ったNifファイルの最適化を解説
しているページです。具体的には3D作成ソフトからNifへと変換する際に
発生するメッシュのゴミを削除します。

効能はゲームが軽くなるそうです。このテキストの編者はあまり速度的な
効能は感じませんでしたが、CTDは減少しました。


Pythonのダウンロードはこちら。
http://www.python.jp/Zope/PyLog/1158809212/index_html

スクリプトのダウンロードはこちら。
http://sourceforge.net/project/platformdownload.php?group_id=199269&sel_platform=3089

本来コマンドプロンプトから実行しますが、インストールし終わると
右クリックのメニューに"Optimize with PyFFI"という項目が追加され、
そこからも実行出来ます。

以下『こまんどぷろんぷと?それがし毛唐の言葉はわからんでござる』
の手順も用意しますたのでよろしければどうぞ。

1.Python をインストールします。

2.スクリプトをインストールします。

3.C:\nifoptimize という作業フォルダを作ります。
 (Cドライブの直下にnifoptimizeというフォルダです。)

4.最適化したいnifファイルを上で作った作業フォルダにぶち込みます。
 (なんとフォルダ構造そのままぶち込んでもらっておk!勝手に中を探って
  全部最適化してくれます。一杯入れると結構時間かかるよっ!)

5.このReadmeと一緒に入ってたバッチファイルnifoptimize.batをおもむろに実行。
 (batファイルはどこで実行してもらっておk)

6.終わるまで全裸で正座

編者の環境では55MB程度までは問題なく一括作業できました。
それ以上はメモリー不足でエラーを吐きました(WinXP/4GBとWinXP64/6GB共に)。

本来MOD製作者のためのものだそうですが、以下バニラのbsaを展開して
最適化する場合のお勧めのnifカテゴリーだそうです。"*"は特に効果のある項目
だそうです。

architecture *
dungeons *
clutter
furniture
landscape
plants
rocks

以下、やってはいけないもの。

hair
helmets
ある種類の creatures
ある種類の clothes
さらに .egm が割り当てられているnif


編者の実験ではこれら禁止された項目を最適化しても正常に表示はされましたが
動作が激重になりましたのでやはりお勧めできません。

※元のメッシュをバックアップするのを忘れないで下さい!
※※甲斐性がないので責任は負いかねます!自己責任で!

※※※律儀な方のために配布条件を書きますが、ご自由にどうぞ!!
●此処までテキスト



オリジナルのファイルは此処から → Download

インストール後の手順はこの方法でもいいです。(3以降の手順)
キチンとインストールが終わると右クリックから"Optimize with PyFFI"があります。
test06

これは nif ファイル単体で選択してもいいですし、フォルダでもOKです。
*処理されたファイルは『すべて上書きされます』
フォルダを指定するとその中にあるすべての nif が処理されます。(そのフォルダ以下の階層すべてが対象)

ただ、いわゆるハイポリコンの装備は1つだけでも凄い時間掛かりますので注意。
あ、ちなみに実施すると DOS窓が開いて処理するか聞いてくるので『Y』キーを押します。

test07

*作業中。全裸で正座してもいいですし、ご飯やお風呂でもいいです(*'-')
test08

終わると何か押してといわれるので適当にキーを押してDOS窓を閉じてもらいます。
test09

これで終わりです。
『パリパリ現象』は無くなってますし副産物?として、『光現象』も正常に処理されます。
『光現象』 → 【slofs its a wig】の下のほうの説明。

それとポリコン数が最適化によって減り負荷が少なくなる MOD もあるようです。
・関連【Warglaives and Silverlight Armor】一番下のほうに記載。

装備紹介も入れようかと思ったのですが、カテゴリー違うので。

と思って再度良く見てみると...
すいません、Private only please と書かれているので、あまり広めるのは歓迎されるものではなさそう...
というわけで具体的な紹介は止めておきます。

ヒントは TESEyeCandy と Shadowwatcher Armor。
まあ、直リンを止めただけとも言うのですが...
ShadowWatcher01


といったところで今回はこんな感じで。

< 追記 >
Nexus にさっき登録されてるしΣ( ̄□ ̄;)
というわけで後で! → 【Shadowwatcher For HGEC

○ Comment

どうも!いつもお気遣いありがとうございます。

とりあえず少し安定したところでバックアップも終え、以前からやってみたかったToDxt1ってのを、どどーんと実施中です。

そのあと問題なさそうなら、恐る恐る nif 掃除 って作業に手を出してみたいなーと思ってます。

やってはいけないもの、っていうものの基準がよく分からなくて、今まで見て見ぬふりをしてましたっっ

パソコンが古くさいので、いろんな部分でぬるぬるにはほど遠いのですが、少しでも気持ちよく遊べたらいいなあって思ってます。




2009.12.17 17:14 | URL | 15jam。 #mQop/nM. [edit]
15jam。さん、こっちでもこんばんは(≧∇≦)ノ

ToDxt1 は VRAM に余裕が無い場合は効果的だと思います。
ただ、透過情報を失うので見た目が変化してしまうものがあることに注意が必要。

逆に VRAM に余裕があるのなら気にしなてくもいいんじゃないかなとは思います。

Nifの掃除は QTP3 等使っていないなら

Oblivion - Meshes.bsa を展開して

architecture *
dungeons *
clutter
furniture
landscape
plants
rocks

このフォルダを掃除、その後無圧縮 BSA にして戻します。

これがたぶん一番効果が高いです。
時間的なものがあれなら上2つのフォルダだけでも。

これで移動時の CTD が驚くほど減ると思います。
QTP3 を使用しているなら QTP3側の Nif をしないとだめですけどね。
2009.12.17 20:10 | URL | なる #- [edit]
VRAMは1G中900Mくらいまでいっちゃう状態なので、かなり期待してます。1G超えるととたんにコマ送りになってしまう。256Mのビデオカード使ってたときは512M超えてもそんなに変わらなかったのに、不思議です。やっぱり超えた部分のやりくりが多くなればなるほど、メインメモリが虐められちゃうんですよねきっと。

結局テクスチャのほうは、テクスチャフォルダの全部から、アルファチャンネル?の無いものだけ変換したんですが、約1Gもテクスチャフォルダがちっちゃくなりました。体感はまだまだどの程度かわかんないですが、使用VRAMもちょこっと減ってる気がします。

QTP3はMAXまで入れつつ、更にその上からいろいろテクスチャ変更系を上書きしてる状態でして、となると、バニラのbsaも何処まで使ってるのかよく分かんない感じです。

QTP3でも architecture 以下に当たる部分がわかりやすければいいのですが、ちょっとずつ探ってみることにします。

そうですよね、片っ端からすべて掃除しなければいけないわけではありませんものね。

移動時に驚くほど、、(ゴクリ)、、驚いてみたいです!ではではやわやわ頑張りまーす!
2009.12.17 21:39 | URL | 15jam。 #mQop/nM. [edit]
QTPは少し曲者ですね
なんでAnimated_Window_Lighting_System等でQTPはメッシュが別途必要なんだろうとおもってたのですが
調べてみるとQTPはオリジナルのメッシュにしている箇所がありました

nifの掃除後、ふとそいうえば落ちなくなったなぁと思うときが
もちろん他に要因があれば体感は出来ないと思います

環境作りは大変ですよね、がんばってください
2009.12.18 00:21 | URL | なる #- [edit]
nif掃除はまだしてないのですが、CTDの原因は取り払われたかもデス!
QTP3max+RAEVWD(全部)+WAC+UL(帝都他2つ抜き)+他小物多数、esp250個/350個くらい;;
あかとしゅマウントでファラウェイして、
『帝都→チェイデンハル→あんびる→帝都→落下、帝都を一周ダッシュ』
で一度も落ちませんでした。一安心で泣けてくる、、、でもFPSは出てなくてカックカクです><

多分CTDの一番の原因は厩MOD様で、外しました。。。惜しい

また明日がんばります。

AWLSはQTP3の使ってますかー?ってOMODをアクティブにするときに聞いてくれました。
2009.12.18 04:02 | URL | 15jam。 #mQop/nM. [edit]
esp250ということは本当に限界近い数入れてるんですねΣ( ̄□ ̄;)
私は以前の環境でも230位までしか使ったことは無いです
そのときは何故かある程度のespがあるだけで起動できなくなる不思議現象がでたりしてました
Ghostすれば起動できますが原因不明だったなぁ

私はMOD入れるときほとんどomodのscript使わずに展開して導入用のフォルダを作ってからomod化する癖が…
2009.12.19 09:52 | URL | なる #- [edit]
nifの変換の練習を始めてますが、
変換中のログを眺めてると、ERRORの表示のほうが多くて怖いです。
エラーになったファイルをもとのファイルとバイナリ単位で比較しても同一のようで、気にしなければいいのかなとか思いながらも、悩んでしまいます。

バニラのbsa内のファイルと同じ名前で上書きされるようなメッシュやテキストファイルがある場合は、バニラのbsaが読まれないのかな?とか、わからないことが多くて、それもまた悩んでます。

さっき試しに、バニラのテクスチャbsaを無圧縮にまとめなおしをしてからUSBメモリにコピーして、oblivion.iniの中のパスをUSBメモリを参照するようにしてみたのですが、USBメモリのアクセスランプが点滅しない感じで、どうなのかなーとか。

あ~、また独り言みたいになってしまった。いつもごめんなさい。
2010.01.14 10:03 | URL | 15jam。 #mQop/nM. [edit]
今日までのインストールフォルダのメッシュとテクスチャから、
バニラのbsaに含まれるフォルダ分をすべてnif掃除&DXT1化して、無圧縮bsaにまとめて、USBメモリにおいたところ、今までよりもFPSの下限が上がりました。やったー!半日仕事。つかれた、、、
2010.01.14 18:23 | URL | 15jam。 #mQop/nM. [edit]
15jam。さん、こんばんは。

お疲れ様です。
色々と環境作るのが大変ですよねぇ、そこに楽しさを見出さないとObは厳しいかも。

Nif変換のエラーは私も原因が判りませんが、失敗した場合ファイル変更はされないです。
BSAの仕組みですがあれはファイルの更新日時が新しいほうが優先されるみたいですよ。

なのでOblivionのMeshファイルはnifで掃除した後、BSA化する前にファイル日時を古くする必要が。

例えばですがBSA内の鉄の鎧のnifを今日掃除したとします。
Vanilla 鉄の鎧 2010/01/15 → BSA化
EVE 鉄の鎧 2009/09/28

こうなると EVE 入れても意味がなくなります、使われるのは新しい日付の Vanillaなので。
こういうのを防ぐには掃除後に日付を弄るツールで変えてから BSA化します。

私は『納入助』というツールで変更しちゃってますね。
たぶん 2006/01/01 辺りにすればいいかと。
その頃が Oblivionの発売日ですし。
2010.01.15 09:40 | URL | なる #- [edit]
そうなんですよね

bsaの中にまとめたファイル一つ一つのタイムスタンプを含めて、新しいものが使われてしまうところが、bsaにまとめる微妙なところでしょうか。
MODの抜き差しが安全になるメリットはさておき。

バニラの差し替えファイルはバニラの日付にしておかないと、今後、今日より以前に作られた差し替えMODに出会って魅せられたときに、それが適用されないことになってしまうのですよね。

今回はそのセオリーもあわせて悩んだあげくに、EVEやQTP3なども今の状態で使っていけるようにと、現在インストールされてるオブリビオンをひとつの節目として、それをそのままコピーしてきてbsaにまとめてUSBにおいてみる、という選択をしました。困ったときにまた悩んでみることにします^^;

ハードディスクの中にそのまま残ってるファイルが優先されちゃいそうに思ったので、、(そっちから変更すれば良かったのか……)

「納入助」素敵ソフトのようですねー!教えてくれてありがとうございます。

うちでは、適当に探した、「タイムスタンプ変更ツール」という名前のソフトをつかっていますが、「納入助」に比べると全然低機能なのでしたー。

オブリビオンのこういう作業、とても楽しいです。
箱庭ごっこがパソコンの中で出来てるような、もうそんなゲームだと感じてます。
2010.01.15 17:04 | URL | 15jam。 #mQop/nM. [edit]
ObMMがArchiveInvalidationを自動処理した段階で、差し替えMODのファイルをそのままインストールフォルダに残しておくと、結局ハードディスクのDataから参照してしまい、USBに入れた意味が無くなるのかもしれない。なんだかよくわからなくなってきました。
2010.01.15 17:28 | URL | 15jam。 #mQop/nM. [edit]
15jam。さん、こんばんは。

どうゆうやり方をしてるのか判りませんが、
別ドライブにBSA入れてるならiniでパス指定しないと参照してくれないんじゃないかな?
2010.01.16 19:12 | URL | なる #- [edit]
iniへの指定は大丈夫でした。

インストール済みフォルダから必要なtextureとmeshesをまとめてから、テクスチャ差し替え系のespを持たないMODをすべてobmmでディアクティブしファイルを取り除いたところ、ハードディスクのアクセスランプは殆ど光らなくなり、うまくいった模様です。そして凄く軽くなりましたー。

ほんと、いつも助かります。ありがとうございました!
2010.01.16 22:36 | URL | 15jam。 #mQop/nM. [edit]
ぉー、上手くいった様で何よりです。
何も助言になって無かったですけどΣ( ̄□ ̄;)
2010.01.17 10:17 | URL | なる #- [edit]

○ Post comment


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

○ Trackback

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