サイリウムコーデの作り方

備忘録です。



ビームマンPのこちらのエフェクトを使うやり方の説明です。透過pngの使えるペイントソフトと、pmxエディタが使えることが前提になります。
1からモデルを作る人向けに書いてますが、既存モデルの改造でもやることは一緒です。
ただ自分で作るなら、「あとからサイリウムにしよう」より最初からサイリウム用にすることを念頭に作ったほうが圧倒的に楽です。



1 よく観察する

 どこが光ってるか、どう光ってるかをじっくり見ます。

2 パターンに分けて書きだす

 光り方の種類ごとに場所をリストアップします。
 同じ光り方をしている部分を同じ材質に、光り方が違うところは別の材質にします。

 例えば←このショウゴくんでいうと

 白と黄→ベルト
 白と青→袖口、肩
 白黄緑青ピンク→腕とマントの羽とWと靴の折り返し
 青と黄→上着の裾(前)とかかと

 その他普通に光ってるところ→襟、首飾り、靴、腕章、上着の裾、羽根飾り、ズボンの裾

 のように分けられます。普通に光ってるところはALで対応しますが、光が流れているところは上記のBodyLineエフェクトを使うことになります。


3 テクスチャを用意する

 まず普通にテクスチャを用意します。光ってない状態のテクスチャです(ALで普通に光らせる部分も今は考えなくて大丈夫です)

 ↑こういう状態です(実際のモデルは金属部分にスフィアを当てたかったので別材質別テクスチャを上から重ねています(=このテクスチャには該当部分が書き込まれていない)が、そこは本題ではないので置いておきます)
 エフェクトはUVを参照しますので、いかに光る前が単色でも、光った後の模様を基準にそれなりの広さを用意した方がいいと思います。
 2で同じ材質に定めたものは同じテクスチャに収めたほうが後々楽ですが、どうしても収まらなかったら別テクスチャ(=別材質)に分割してもいいでしょう。あとの手間が増えるだけなので。(既存モデルの改造なら別テクスチャにせざるを得ないこともあると思います)
 逆に別材質に定めたパーツ同士を同じテクスチャに収めても問題はないです。別に手間も増えません。




 BodyLineで光らせる部分を(R,G,B)=(255,0,0)で塗ります。サイリウムコーデモデルにはこのテクスチャを適用します。
 これをしておかないとエフェクトを適用した時に、エフェクトの光と元テクスチャが干渉してチラチラしてしまいます。エフェクトをちゃんと適用すればこの赤は消えます。






 上の画像の赤部分を取り出してその上からグラデーションをかけたものを用意します。
 分かりづらいですが青いところは本来は透明です。
 白から黒に向かって光が流れていくので、本家の光り方をよく見てグラデーションを設定します。

 注意したいのは一つの部位でグラデーションを繰り返さないことです。
 白→黒白→黒と繰り返してしまうと、黒と白の継ぎ目のところで汚くなります。一度やってみればわかるとは思います。

 この画像はエフェクトが参照するのでモデルの材質には充てません。
 光り方が違う材質を一つのテクスチャに収めた場合、材質ごとに分けてこの画像を用意してください。







 これは光り方を決める画像です。左が先頭になります。
 速度を早くしたかったので二回繰り返しましたが、まあそれは好みでいいと思います。
 画像の幅は特に気にしなくてよさそうです。

↑ここまでがBodyLine用のテクスチャです。

 それとは別にALで普通に光らせる部分用のテクスチャがこれ↓です。



 これも同じく青いところは本来透明です。
 普通に材質の反射強度を100以上にすると材質全部が光ってしまうので、ベースの材質を複製してこちらのテクスチャを適用させることで光る部分を選びます。
 これに関してはもっと賢いやり方がいくらでもある気がするので参考にしなくてもいいと思います。
 エフェクト側で光る部分を指定するのは配布モデルに向いていないかな(というかほかのやり方よくわからない)という理由でこのやり方にしているので、自分用ならもっとほかのやり方があると思います。マジ。


以上の作業をエフェクトを適用する材質ごとに繰り返します。





4 エフェクトを用意する

 上記のエフェクトを落としてきます。
 光り方の別ごとにエフェクトを複製します。このとき自分で分かりやすいようにフォルダの名前を変えておくといいと思います。材質の名前とか。

 僕にはエフェクトをのものを書き換える能力がなかったので、エフェクトにデフォルトで入っているテクスチャと入れ替える作戦をとりました。




↑こっちをLineTex.png



↑こっちをLineColor.png

 とそれぞれリネームしてエフェクトと同じフォルダに入れます。もともと入ってたテクスチャは別の名前にするとかしておいておきましょう。
 とにかく今回は使いません。


5 エフェクトを適用する

 ここまで来たらほとんど完成。
 モデルを保存してMMDに読み込みましょう。
 エフェクトの説明に従って、該当材質にエフェクトを適用して、AutoLuminousを入れると光ります。

   >>やったー!!!<<






多分これで抜けはないと思いますが、わからんことがあったらここでもツイッターででも聞いてくれれば答えます。
レッツサイリウムチェンジ!!