主にゲームと二次創作を扱う自称アングラ系ブログ。
生温い目で見て頂けると幸いです、ホームページもあるよ。
http://reverend.sessya.net/
2015/11/06 (Fri)22:25
バンッ!
どうも、グレアムです。前回の予告通り、今回はFallout New Vegas用のMod「 The Jackal 」のマズルフラッシュを青くする方法を雑に紹介しますよ。既に言った通りこれは初心者指南ではないため事前準備とか前提知識とかそういうのは省いてガンガン進めるぜ。
あと今回はあくまでマズルフラッシュ改造のみに焦点を当てているため、他の項目や基本性能の改変なんかに関しては他のサイトを参考にしてください。というか、項目名見ればだいたいわかるけどな。
まずはFNVEditでThe Jackalのデータ(The Jackal.esp)を開いてみましょう。
探すのはWeaponツリーのThe Jackalという項目です(EditerIDはWeapHellsingJackal)。ちなみにHellsing Arms .454 Casullという項目もありますが、ゲーム中にコンソールコマンドから入手したところ、こいつはバニラに登場するMaria?をベースに改造したもので、おそらく未完成品です。今後カスールも製作予定ということなんでしょうか。
The Jackalのデータを見ていきましょう。
マズルフラッシュを定義しているのは、DNAMツリーのProjectileという項目。どうやらここはバニラのデータを参照しているようですね。
それがわかったら、今度はFalloutNV.esmを開いてProjectileツリーから該当データを探します。名前じゃなくてIDで探すとわかりやすいよ。
The Jackalで使われているのはAutoTracerProjectile "Rifle Bullet" [PROJ:0017A2C6]というデータ。下から二番目ですね。こいつは射出された弾丸の内部データやエフェクト関連のMeshの指定に使われているものらしいです。たとえば弾速を変えたい場合はSpeedの項目をいじればいいわけですな。
マズルフラッシュを変えたい場合はこのデータを改造する必要があるわけですが、こいつを直接改造しちまうと、このデータを参照しているすべての銃火器に結果が反映されてしまうので、右クリックからCopy as new record into...を選択してThe Jackalにコピーしちまいましょう。EditerIDは適当にわかりやすい名前にしておいてください。元データと同じ名前はNGです。
マズルフラッシュのMeshを定義しているのはMuzzle Flash ModelというツリーのNam1 - Model Filenameという項目。これで参照しているMeshファイルの名前がわかったので、今度は専用ツールを使ってBSAファイルをアンパックするかなんかして該当ファイルを抜き出しましょう(Fallout - Meshes.bsaから)。俺はBSA Brouserというツールを使いました。
上の画像はBSA Brouserから該当ファイルを指定したところ。Rifle Bulletで使われているマズルフラッシュのMeshはminigunmuzzleflash01.nifというファイルのようです。デフォルトのREC順で上から探すとウンコ漏れそうなほど面倒臭いので、FILEをクリックして名前から探しましょう。というかまぁ、今回は上の画像ので番号わかりますけどね。
ActionタブからExtractを選択すると、Dataフォルダ直下に該当ファイルが生成されます。ちなみにバニラのファイルを置き換えるような環境系のModを使っている場合、データが上書きされる可能性があります。心配であればExtract To...で任意の場所に摘出しましょう。
データを摘出すると、Data\meshes\effects\muzzleflashesにminigunmuzzleflash01.nifが生成されているはずなので、今度はこいつをNifSkopeで開きます。
適当にツリーを開いて適当に見てると、マズルフラッシュに使われているTextureはfxmuzzleflashar02.ddsだってことがわかります。ここらへん俺は漠然としか理解してないのでちゃんとした説明はできませんスイマセン、フィーリングで理解してください。今回のクソ講座が初心者向けではないっていうのはつまりそういう理由です。
使用するTextureの名前が分かったら、ふたたびBSA Brouserを起動して該当ファイルを摘出します。今回参照するのはFallout - Textures2.bsa。エフェクト関連はこいつに格納されているらしいです。
データを摘出すると、Data\Textures\effects\muzzleflashesにfxmuzzleflashar02.ddsが生成されているはずです。こいつを適当な画像編集ソフトを使って自分好みのブルーに変えましょう。
元となるfxmuzzleflashar02.dds
こんな感じで適当に青くします
たぶんddsプラグインを入れたGimpだけで作業は可能なはずですが、Gimpでddsを保存してしまうと圧縮が汚い(というか有り得ないブロックノイズが発生する)ので、俺は一度pngで保存したあとsaiの色調補正やらなんやらで加工し、DXTBmpでddsに変換してます。
言わずもがな透過情報を持つTextureなので、DXT-3かDXT-5で保存しましょう。
こいつも元データを上書きしてしまうと、このTextureを参照するすべてのデータが影響を受けるので、別の名前で保存しましょう。俺はわかりやすく、The JackalのTexture一式が保存されているTextures\Weapons\Hellsing\Jackalフォルダにmf.ddsという名前で保存しました。今回はそういう作業を行なったという想定のもので話を進めていきます。
ちなみにバニラのリソースと同一のデータがDataフォルダ内にあると描画エラーの元になるそうなので、元のファイルは削除するか、今後作業に必要となったときのことを考えて適当な作業用フォルダに隔離しておきましょう。
あとはminigunmuzzleflash01.nifをふたたびNifSkopeで開き、fxmuzzleflashar02.ddsを指定している箇所をすべて上で作ったTextureのパスに置き換えてください(上の通りに作業したならTextures\Weapons\Hellsing\Jackal\mf.ddsを指定する)。
ちなみに一箇所ではなく複数あります。面倒臭いですが、なんとかしてください。
それとパレットのアイコンが表示されている項目の、Emissive Colorという部分がおそらく反射光の設定になると思われるので、こいつを適当に青っぽい色に変えておきましょう。これも複数箇所あります。面倒臭いですがどうにかしてください。やり方?適当にいじってればなんとなくわかりますよ。たぶんね。
ぶっちゃけここらへんの解説(といっていいのか…)は最低限NifSkopeを扱える前提で書いてるので、わからない場合はこんなクソみたいなページ開いてないでもっと親切な初心者用解説サイトを先に見てください。俺自身もあまりよくわかってないし。
設定が終わったら忘れずデータを保存しましょう。こいつも元データを上書きしてしまうと、このMeshを参照するすべてのデータが影響を受けるので、別の名前で保存しましょう。俺はわかりやすく、The JackalのMesh一式が保存されているmeshes\weapons\Hellsing\Jackalフォルダにmf.nifという名前で保存しました。今回はこの設定でいきたいと思います。
Textureのときと同じく、bsaファイルから摘出したバニラのデータ(minigunmuzzleflash01.nif)
は削除しておくかバックアップ用のフォルダに退避しておきましょう。
MeshとTextureの改造が済んだら、ふたたびFNVEditの作業に戻ります。
The JackalにコピーしたProjectileデータを参照し(間違ってもFalloutNV.esmのデータを編集してはいけないぞ!くれぐれも!)先述の、マズルフラッシュを定義する項目の参照部分にさっき自分が作ったnifファイル(画像では上の設定通りに作業したため、meshes\weapons\Hellsing\Jackal\mf.nifという名前で保存している)を指定しましょう。
あとはWeaponツリーのThe Jackalを参照し、Projectileのパスを上で改造したデータのものに書き換えればOKです。
これで作業は終わり…と言いたいところですが、じつはもう一箇所、こいつは検証したわけではないんですが気になる項目があるのでもう少しだけ続くんじゃ。
気になる部分ってのはこの、ProjectileデータのDATA - DataツリーにあるMuzzle Flash - Lightという項目。見てみると、MuzzleFlashOrange352などという、見るからにマズルフラッシュをオレンジに光らせそうなデータを参照している。
ぶっちゃけMeshファイルだけで完結してるんじゃねーのかとか、Falloutの内部設定ってけっこう意味ないダミー項目が多いのでこれもその一種なんじゃないかとか思ってしまうんですが、折角なのでここも変えておきましょう。
参照するのはFalloutNV.esmのLightツリー。
見たところ、どうも光源をRGBで設定しているデータのようですね。こいつもThe Jackalにコピーしたあと、コピーしたデータの数値を適当に書き換えちゃいましょう。間違っても元データをそのままいじってはいけないよ。
で、The JackalにコピーしたProjectileデータをふたたび開き、こちらで指定されていたLightデータの参照先を上でコピーしたものに書き換えておきましょう。これで作業は終わりです。お疲れ様でした。
ちなみにTracerはProjectileデータの上記項目で定義されているのですが、こっちは先日書いたようにnifデータを改造してもあまり青くならなかったんで今回は無視する方向で。minigunmuzzleflash01.nifでも使われてたFXSoltGlowSpot01.ddsはモノクロのTextureなんで、たぶん関係ないはずなんだよな。
ちなみにTracerの発生確率はProjectileデータのDATA - Dataツリー下のTracer Chanceという項目で定義されています。1.000000で発生率100%、デフォルト設定で0.500000なので本来の発生率は50%ですね、青いマズルフラッシュからオレンジの弾道が見えるのはおかしいので0.000000にしちゃいましょう。
これにて青いマズルフラッシュの完成です、お疲れ様でした。というか俺が疲れたよ。慣れないことするから。
ちなみに上で紹介した方法は雑の極みというか、模範的でもなんでもない適当なやり方なので、たぶん他にいい方法はもっとあるはずです。そもそも俺がFalloutのシステムを理解して作業してたわけじゃないからな。
ちなみに今回の記事を参考にして、上手くいかなかったとか、間違えてバニラのデータに上書きしちゃったとか、バックアップ取ってないとか、そういう不都合不具合があったとしても俺は一切まったく何一つ責任は取れませんし取りません。
Modの改造に関しては俺が言うまでもないけど、くれぐれもバックアップは怠らないようにしてください。これ最後に言うことじゃねぇな。
PR
Comment