【VRMLiveViewer】ツールを使って、VRoid の衣装を発光させる 
2023/05/31 Wed [edit]
約1年2ヶ月前に Unity で「VRoid の衣装を発光させる」方法を書いたが、120 さんが発光設定できるツールを公開してくれたので、「Unity を使わずに、発光設定できるか?」を試してみた。

・VRMの光物設定するやつ (BOOTH - 120byte)
結論を先に言うと「Unity 無しでも発光設定はできる」ことがわかった。ただ VRoid はデフォルトで発光設定が無効になっていて(テクスチャに黒塗りのマスク「Shader_NoneBlack.png」が当てられてるため、光らない)、これを入れ替えないといけないので、もう1つツールを使って、そのやり方も伝授しておこう。考え方自体は以前と同じなので、ここでは簡単な手順だけ書いておくことにする。
■衣装の一部だけを発光させるマスク(エミッションマップ)を作る
■ツール(VRM Emission Editor)に読み込んで発光設定をする
■VRMLiveViewer に読み込んで発光させる
(※) VRM Emission Editor 20230528 / VRMLiveViewer 3.7.1 / Windows11(x64) で確認
■発光させるテクスチャをVRMから取り出す
ここでは、発光させる VRoid は何でも良いが、以前私が Unity で発光設定したことある「CLCT for FUTURE」を例に、今回はツールだけで発光設定をやってみよう。VRoid Studio のプリセットに入っているので、適当なモデルに着させて、VRM エクスポートして欲しい。
前述したが、VRoid の場合は、デフォルトでは黒塗りのマスク(Shader_NoneBlack.png)が当てられていて、そのままでは光らない。なので、ここでも 120 さんのツールを使わせて貰い、VRM からテクスチャを取り出そう。それを元に後述でマスクを作ることになる。「VRMテクスチャ差し替えるやつ」(VRM TextureReplacer)をダウンロードしよう。
・VRMテクスチャ差し替えるやつ
ダウンロードしたら「VRM_TextureReplacer.exe」を起動して欲しい。起動したら「CLCT for FUTURE」を着せた VRM をツールにドロップしよう。このツールはモデルに設定されてるテクスチャを入れ替えるツールで、衣装の色を変えるとき等に便利だが、単に「Export」すれば、テクスチャを取り出すことができる。
取り出すテクスチャは任意で良いが、要するに光らせたい部分があるテクスチャを右側の一覧から選んで、「Export」を押すだけだ。ここでは「N00_000_00_EyeIris_00_EYE」(目)、「N00_007_03_Tops_01_CLOTH_01」(トップス)、「N00_001_02_Bottoms_01_CLOTH」(ボトムス)、「N00_008_01_Shoes_01_CLOTH_02」(靴) 等、色々取り出してほしいが、テストするだけなら、とりあえず一番目立つ部分だけでも良いだろう(「目」などが簡単)。
■衣装の一部だけを発光させるマスク(エミッションマップ)を作る
マスク(エミッションマップ)の作り方は以前書いた方法と同じだ。「光る部分を白または輝度の高い色(シアン等)」「それ以外を黒」にすることでマスク画像となる。PhotoShop や GIMP などを用いて、光らせたい部分だけを残し、他は黒で塗って欲しい。なお、透過してる部分も光らないので、「N00_000_00_EyeIris_00_EYE」(目) 等はそのままマスクに使っても良い(もちろん、目以外を黒塗りしても良い)。画像加工自体はテーマから外れるので、それぞれの画像編集ソフトのヘルプを見て、マスク画像を作って欲しい。以下はあくまで例となる。

●光らせたい部分と、光らない部分(黒)のマスク(エミッションマップ)の例
■ツール(VRM Emission Editor)に読み込んで発光設定をする
マスク(エミッションマップ)ができたら、発光設定をしてみよう。ここでは今回メインの「VRMの光物設定するやつ」(VRM Emission Editor) を使う。ダウンロードしたら、「VRM_EmissionEditor.exe」を起動し、発光させたいモデルをドロップしよう。
・VRMの光物設定するやつ
モデルを「VRMの光物設定するやつ」に読み込んだら、右上のドロップダウンから、モデルに当てられているテクスチャの名前が選択できるようになる。ここでは目を光らせてみるとして「N00_000_00_EyeIris_00_EYE」を選択しよう。また「エミッションマップの読み込み」から、先ほど作ったマスク(エミッションマップ)で同名のものを読み込もう。
デフォルト状態では光ってるのが確認しずらいかも知れない。その場合は、左上にある「Light」(ライト)を下げると良い。真っ暗にして、RGBと「光の強さ」を適当に上げれば、光ってるのが確認できると思う。
あとはやり方は同じだ。対応する部位とマスク(エミッションマップ)を次々読み込んでいって、発光設定をすれば良い。全てが完了したら右下にある「VRM書き出し」からモデルを再エクスポートしよう。
■VRMLiveViewer に読み込んで発光させる
発光設定したモデルを VRMLiveViewer で読み込んでみよう。ここでも背景が明るいと光っているのが確認しずらいので、Floor(床) や Sky(空) を無し(None) にしよう。またメインライトも太陽のアイコンを右クリックで消せるので、とりま真っ暗にすれば、発光設定した部分だけが色が付いてるのがわかる。綺麗に発光させるには「ポストエフェクト>ブルーム」をオンにしよう。
発光自体の強弱を調整するには「キャラクターのオプション>MToon発光の設定」で調整できる。とりあえず簡単なのは [発光の補正] でスライダーを動かしてみることだ。ライトや他のエフェクトでも輝きの強さは影響受けるので、その都度設定すると良いだろう。
ちなみに VRMLiveViewer では [発光モード] の設定により、点滅やランダム発光など、複雑な発光もできる。上手くやれば、派手な、サイバーな演出もできると思うので、挑戦してみて欲しい。
|
|
(関連記事)
【VRMLiveViewer】VRoid の衣装を発光させる (Unity)
【VRMLiveViewer】VRM(VRoid)をライブステージで踊らせるアプリを作ってみた
【VRMLiveViewer】魔法陣の床を作る
【VRMLiveViewer】GLTF モデルに影が付くように修正して、アプリで利用する
【VRMLiveViewer】GLBで背景モデルを自作する
【VRMLiveViewer】GLBで床を作る(FloorMake_Sample の解説)
【VRMLiveViewer】GLBで壁を作る(WallMake_Sample の解説)
【VRMLiveViewer】背景GLTFの設定リスト(使用例)
- 関連記事
トラックバック
トラックバックURL
→http://fantom1x.blog130.fc2.com/tb.php/428-7bae091f
この記事にトラックバックする(FC2ブログユーザー)
| h o m e |