続き物です。
今回はバッグのグラフィックを優先して、Hazmat Suitからタンクのグラフィックだけを削除します。モデリングはしません。
Hazmat Suit(防護スーツ)のタンクを透明化
個人的にはタンク残した方が自然だとは思いますが、こんな修正方法もあるよってことで!作業量多めです。Photoshopかpaint.net等を使える前提で。
今回Armor Addonは変更しません。ヘルメットのバイザーが透過しているのと同じ理屈で、タンクを完全に透明化します。見た目には何も見えなくなる訳です。テクスチャ(ディフューズマップ)のアルファチャネルで、マスクした箇所を透明化できる機能を使います。
Hazmat SuitのArmor Addon(000CEAC3)
です。前回からの流れでPriority上げたespで実験してますが、バッグの58番を塞いでいなければ関係無いです。
テクスチャにアルファチャネルを追加
Hazmat Suitのディフューズマップ、HazmatSuit_d.ddsをいじります。このテクスチャはDXT1(アルファ無し)なので、paint.net等のフリーソフトでも開けます。他のファイルもそうですが、ルーズフォルダに無かったらba2の中から拾い上げてください。
ファイルパスは、
Textures\Armor\HazmatSuit\HazmatSuit_d.dds
アルファチャネルを作り、タンク部分を黒塗りします。
UVMAPはこんな感じ。赤塗りの所がタンクのテクスチャです。他のUV領域にはみ出ないように塗ります。自動選択でも心を込めて手塗りでも、お好みで。
終わったらDXT1(1bitアルファ)でセーブします。
「透過」ではなく「削除」が目的なので、こっちの方が容量にやさしいです。DXT5だと容量倍化しますが、別に画質上がったりしません(アルファチャネル分で容量増えるだけで、RGBは同一)。
微妙にウソついてました、R5G6B5(16bit)からA1R5G5B5(16bit)になるので、緑の階調が半分になります。ブロックノイズが増えたりはしないです。
ただしアルファ付きDXT1でセーブすると、アルファ塗りした部分がRGBから切り取られてしまうので、それが嫌な場合はDXT5で。
ここら辺もSkyrimブログの方でやってます。
テクスチャはこれでおしまいです。
メッシュに透過設定を追加
MOutfit.nif(男性用)で作業します。
ファイルパスは、
Meshes\Armor\HazmatSuit\MOutfit.nif
NiAlphaPropertyを新設
1bitアルファでテクスチャを切り抜いたので、タンクが真っ黒です。この部分を透明にする設定を追加します。
Block>Insert>NiA...からNiAlphaPropertyを選択すると、SSのように新しいNodeが追加されます。あとで紐付けするので、どこで作っても同じです。
Block Detailsの中を設定します。
Flags:4844
Threshold:128
簡単に説明すると、これで「アルファチャネルの値が128以下の所は非表示にする」といった設定になります。テクスチャのアルファチャネルでタンク部分を黒塗り(つまり0)にしたので、その部分が非表示になる算段です。
フラグの各bitの詳細やスレッシュの決め方等は、Skyrimブログの方で解説あります。
NiAlphaPropertyを紐付け
Hazmat Suitの胴の部分(Node95のBSSubIndexTriShape)に、作ったNiAlphaPropertyをくっつけます。
Block Detailsの中のBS Propertiesで紐付けができます。作ったNiAlphaPropertyがNode97だったので、ここで97を設定します。紐付けが終わると、SSのようにタンクが透明になる筈です。見た目が透明になるだけなので、頂点は残ってます。
Nifskopeこれで終了!あと1作業です。
マテリアルファイルに透過設定を追加
HazmatSuit.BGSMを変更します。Material Editorで開けます。
Skyrimでいう所のBSShaderTextureSetみたいな物です(Fallout4のメッシュにも有りますが、多分ゲームで使ってない気が)。
ファイルパスは
Materials\Armor\HazmatSuit\HazmatSuit.BGSM
Alpha Testの項目にチェック入れるだけです。
※Skyrimには無い手順なので、この設定を忘れずに。これを設定しないとタンクが黒くなるだけです。
これで完了です!
当初はネタ半分だったんですが、だんだん「これも有りか!?」とか思えてきました。
以上、おしまいです。