コイカツ MOD制作
ZIPMODの構造や、SB3Uの使い方はわかってきたし、Detail Maskでの影のつけたかも何となくわかる。
ただし、Normal Map!テメーはダメだ!
blenderの影で、幾多のルーキーMODDERたちの心を折ってきた難解なテクスチャー。MOD制作序盤の難敵。Normal Map。筆者はPhoto shopをこねくり回して、こいつを料理してきたが、GIMPでの簡単調理法が分かったので共有したいと思う。
MaterialEditor使いの諸兄らにも参考になれば、これ幸いだ。
2023/07/21 @88escargot
★今日のお話★
Normal MapのNormalは日本語で「法線」と訳され、垂直方向成分というニュアンスで理解してください。3DCGとしてはポリゴンに対して、光の反射角を設定できるという理解でよいです。Normal Mapがない場合、ポリゴン面に対して、反射設定(法線向き)は一意であり、ポリゴン面は一様に反射します。
下の図のようにノーマルマップ上で着色するとその濃淡により、反射角度が変わります。これを駆使すると、光の屈折によりポリゴン面に疑似的な凹凸を作ることができます。これがNormal Mapの凄いところです。
上の図では、説明のため、X軸のみで記載しましたが、Normal MapはX軸法線成分、Y軸法線成分、Z軸法線成分の3次元ベクトルで光の反射方向を制御しています。
一般的なNormal Mapはこれを素直に色の三原色であるRGBに置き換えて、テクスチャ化しています。このため、手書きでもそれっぽくできます。しかし、コイカツのNormal MapはY軸法線成分によるグレースケールテクスチャに対して、X軸法線成分をα値とした半透明のテクスチャという謎仕様です。
多くのルーキーMODDERは手始めに公式衣装を改造しますが、この半透明テクスチャが物凄く扱いづらく複数の衣装を合体させるときの大きな障害となり、彼らの心をへし折ってきました。かくいう筆者も偶然、Photo shopをこねくり回したら、複雑な手順で、アルファチャンネルの分離/合成することができるようになり。それまで、本格的なMOD制作はできていませんでした。
投稿ネタを考えていたら、ふと、おぼろげながら浮かんできたんです。「チャンネル分解 GIMP」という検索ワードが。そしたら、ものすごく簡単にRGBAの組み換えができました。一般的なNormal Mapの形式にしてもいいし、X軸法線画像/Y軸法線画像それぞれを編集して再統合することも容易です。
さて、聡明な諸兄らはすでにお気づきかと思うが、STEP1の図をよく見ると、コイカツのY軸法線画像がX軸法線画像に比べて、かなり明るい。これもコイカツ謎仕様と思われるが、レベルを確認すると192を中心にして128~255で正規化したようなレベル分布になっている。
このため、blenderで使用する際には、Y軸法線画像を一度、入力レベルのブラックを128してレベル補正したほうがよいかもしれません。なお、blenderからコイカツ仕様のNormal Mapへ再合成する際も出力レベルのブラックを128にして元の明度に近づける必要があります。しかし、筆者が実験したところ、これらのレベル補正は、不可逆で微妙に復元結果が違いました。blenderに取り込まずに公式衣装を画像として弄る場合はSTEP2のようにそのままチャンネル合成したほうがよいと思います。
STEP2でチャンネル合成した画像はそのままGIMPで編集してよし、Photo shopで編集してもよしです。なお、筆者はチャンネル合成はせず、X法線画像とY法線画像のままそれぞれ編集する変なスタイルです。
では、それぞれ適当に編集したら、あとは元のコイカツ仕様のNormal Mapに再合成します。聡明な諸兄らはすでに気が付いていると思うが、STEP2と手順は同じである。しかし、微妙に異なるため、以下、図解。今回の知識をMOD制作やMaterial Editorの素材生成に役立ててもらえれば、幸甚である。
—————
更新履歴
2023/07/21 公開
—————
今回のお話でわかったコイカツ機能はごく一部。
コイカツでできること。それはまだ・・・・混沌の中。
それが・・・・コイカツ沼!
当サイトの記事は「困ったを完全にサポートするものではなく」、「解決に導く」または「ヒントを与える」程度のものです。よって記事以上のサポートは一切行いませんのでご了承ください。
誤字脱字、内容の間違い等がございましたら各投稿者もしくは管理者のTwitterアカウントまでご連絡下さい。