HOME >VRoidとUnityで遊ぶ

VRMで遊ぶ【VRM-PNG】

(2024/1/14 更新)

VRoid Studioで作成した3Dモデルを使用して、透過PNG画像を出力するアプリケーションをUnityで作ってみた。

【出来ること】
・VRMビューワー
・透過PNG画像出力
・ポーズ調整(セーブ・ロード可)
・ボディテクスチャ(衣装等)の変更 ※
・表情変更
・デスクトップマスコット機能
・その他

【注意】
※基本的にVRoidモデル専用。他のVRMモデルも読み込み可能だが、機能は制限される。
※3Dデータは読込のみで、3Dデータのパラメータの書き換えはしません。


ダウンロードはこちら↓【Windows用】
VRM-PNG(Ver5.5)
Ver3.7改 以降の補足説明はダウンロードページあります。


VRM-PNGの簡素版はこちら
VRM-PNG2


当ソフトの使用は自己責任でお願いします。環境によっては動かない場合もあるかもしれません。
3Dモデルは付属していませんので、別途ご用意ください。


VRM形式の3Dモデル作成は,VRoid Studioを使用しています。
(外部リンク)VRoid Studio

アプリケーションの作成は、Unityエディターを使用しています。
(外部リンク)Unity
© Unity Technologies Japan/UCL



使い方

まずは、VRM形式ファイルを用意します。
無ければVRoid Studioでモデルを作り、VRM形式でエクスポートしておきます。
エクスポート前に ”髪の毛メッシュを結合する” をチェック。



次にVRM-PNGを起動させます。(VRM-PNG.exeをクリック)

poseフォルダは、ポーズデータの保存フォルダ。
ScreenShotフォルダは、GIFアニメーション・コマ送り画像の保存フォルダ。
おまけフォルダは、おまけ素材フォルダ。


起動時の画面(Ver4.6)


VRM読み込み後は、他のタブも開けるようになる。
タブはドラッグ移動・最小化も可能。
タブが表示範囲外に隠れた場合、モデル情報ボタン横のRボタンを押し、再度目的のタブを押すと復帰する。

© Unity Technologies Japan/UCL

【画像出力 操作手順】
① VRMファイル開く。
② ポージング等を適当に決める。
③ 画像サイズ指定。
④ 撮影。


【デスクトップマスコット 表示手順】
① VRMファイルを開く。
② ポージング等を適当に決める。
③ F9を押す。 (ウィンドウ透明化・最大化)

④ 解除は、キャラをクリック(アクティブに)し、F9を押す。
⑤ ウィンドウにキャラがいない場合は、Eキーを押か又は、画面最大化を行う。





スタート

【カメラ操作 マウス】
移動1 ---- マウスホイールボタン
移動2 ---- マウスボタン(左)+キーボード(Ctrl)
回転 ---- マウスボタン(右)
ズーム ---- マウスホイール


スタートタブ(VRoidを複数体読み込ますと緑ボタンが表示される)
 

VRMを開く(ボタン) --- VRMファイルを読み込みます。
撮影(ボタン)--- スクリーンショットを透過PNGで保存。
撮影(スライダー)--- 画像サイズを選択。
不透過撮影 --- PNGフォーマットの切替(ARGB32/RGB24)、チェックでRGB24。
VポーズLoad --- VRoid用のポーズデータの読み込み。(VRoidの関節角度)
VポーズSave --- VRoid用のポーズデータとして保存。(VRoidの関節角度)
ポーズLoad --- IK用ポーズデータの読み込み。(各IK位置と他のパラメータ)
ポーズSave --- IK用ポーズをデータとして保存。(各IK位置と他のパラメータ)

ウィンドウ透明化 --- 他アプリとの画像色比較などに使用。(マウス操作 透過に注意)
1:1(アスペクト比) --- アスペクト比(1:1)にしたい場合に使用。
2:1(アスペクト比) --- アスペクト比(2:1)にしたい場合に使用。

空・地面・影 --- 背景の切替。
空(横スライダ)--- 海・草原時の位置調整。
地(上下ボタン)---地面の高さ調整。キーボード左Ctrlを押しながらで高速移動。
補 --- 地面とVRoidモデルの高さ補正。

モデル(チェック) --- モデルの表示・非表示。
1・2(ボタン) --- マスタモデルのポーズを2体目と3体目にコピーする。

視野角 --- カメラの視野角。
拡大・縮小 --- カメラズーム(マウス操作と同じ)
回転 --- カメラ回転(マウス操作と同じ)
移動 --- カメラ移動(マウス操作と同じ)
カメラリセット --- カメラを初期位置に戻す(Eキーと同じ)

目線 --- 目線の選択(カメラ・白球・ランダム・遠い目)
手首 --- 手首の角度調整(手首付近にある白球をドラッグして調整)
足首 --- 足首の角度調整(足首付近にある白球をドラッグして調整)

色(リセット) --- 色・光タブのスライダー群を初期位置に戻し、シェーダーをリセット。
光(リセット) --- 光源位置を初期位置に戻す。
重(リセット) --- 重力スライダーを初期位置に戻す。

LookAt --- 水色球にヘッド・ボディを追従させる機能。
姿勢 --- モデルの中心位置(root)回転。
IKボタン --- ポーズのリセット。
IKスライダー --- IK調整用の球の大きさを変えます。
手 --- おっぱいカーソルとハンドカーソルだけ表示を残す。

重力 --- 重力調整(髪や衣装が影響を受けます)
風 --- 風調整(重力を0以外の数値にする)
視 --- 視点選択。
天球補正 --- 天球(おまけVRM)の位置オフセットボタン
OP左(チェック) --- 恥じらい表情機能
OP右(チェック) --- IK調整用の球も撮影します。
タ-ンテーブル --- 鑑賞用です。ターンテーブル調整で速さが変わります。タ-ンテ-ブル1は回転で、タ-ンテ-ブル2は一定角度で往復です。切で回転は止まります。



【IKによるポージング】 
※IK(インバースキネマティクス)

操作は画面上のカラーボールをマウスのドラッグ操作で動かし、ポーズを決めます。
赤 --- 手首
黄 --- 肘
青 --- 膝
緑 --- 足首

水色 --- LookAt
うす緑 --- HEAD(LookAtの子)
うす緑 --- BODY(LookAtの子)

白 --- 目線

橙(補助光源用)---IK用ではありません
桃色(おっぱい用)---IK用ではありません


LookAtは移動。 HEAD・BODYは回転(Rボタンで回転リセット)


手首・足首の回転は、スタートタブの手首・足首スライダを下にし、灰色球をドラッグさせると回転する(若干コツがいる・・)


VRoidモデルで更に微調整する場合は、上半身・下半身・指モードで行います。このモードからIKモードに切り替えるとポーズがズレるので注意が必要です。IKモードに切り替える前に、Vポーズデータでのセーブをおすすめします。



【視野角】

視野角変更スライダー(初期値:35)は、カメラズームではないので注意。
基本的にカメラズームを行う場合は、拡大・縮小を使います。




【恥じらい表情機能】

赤面オプション(恥じらい表現)は、以下の部分(OP左)をチェックすると有効になります。 以下のカラーボールをクリックすると表情が変わります。




【撮影画像の表示がなんかおかしい場合】

不透過撮影にチェックを入れます。(透過されないので注意)






形態

形態タブ



上部スライダー ---モデルの選択(左:マスター 中・右:追加モデル)
表情 --- プルダウンより表情を選ぶ(一番下にオールリセットあり)
指 --- プルダウンより指形態を選択後、スライダーで左・右・両方をどれかを選択。

MatCap --- MatCapファイルの読み込み。※
個別 --- MatCapの適用方法(指定された箇所だけか、全部か)※
Save --- テクスチャの書き出し。※
Load --- テクスチャの読み込み。※
確認 --- プルダウンで指定されたテクスチャの確認(赤点灯する)※
顔・体(プルダウン)--- モデルのテクスチャリストが表示される。※
体(スライダー) --- テクスチャの透明度が変更出来る。※

輪郭線 ---  輪郭線の太さを調整。※
黒 --- 輪郭線を黒にする。もう一度押すと元に戻る ※
衣装消 --- 服・靴・アクセサリを一括で透明化する ※
衣装戻 --- 透明化した服・靴・アクセサリを一括戻し ※
顔_肌 --- Face(顔・耳)テクスチャを読込、一括変更 ※
体_肌 --- Body(体・足首・手首・ヘアーバック)テクスチャを読込、一括変更 ※

おっぱい --- バストの衝突判定を有効にします。※
指補正 --- 初期状態の衝突判定は手首なので、衝突判定を指近くまでオフセットする。※
左右 --- カーソルをバストに移動させる。※
おっぱい(スライダ)--- 衝突判定の大きさを調整。※

※基本的にVRoid以外のモデルでは機能しない。


【おっぱいカーソルの使い方】

①VRoidモデルをロード
②形態タブを開く
③おっぱいボタンを押すことで、バストに当たり判定を追加します(VRoidモデル専用機能)
④ピンク色のカーソルをバスト付近でドラッグ・・です。






セリフ

セリフタブ


・3Dテキストの移動はドラッグで行います。横書きの場合は、一番上の列の1番左の文字で、縦書きの場合は、一番最後の列の一番上の文字をドラッグします。
・セリフタブもドラッグ移動出来ます。
・3Dテキストを非表示にする場合は、左のVチェックを外す。
・セリフ入力は、直接入力 又はクリップボード(クリ)から出来ます。
・直接入力の場合、リターンを押すと一旦画面に表示せれ改行もされる。

スライダー --- 文字の大きさを変えます。
ロック(チェック) --- ドラッグ移動と(消)の無効/有効。
クリ --- クリップボードの文字列を取り込みます。
正 --- テキストをカメラ対してまっすぐに表示させる。
太 --- 文字の太さ。
白 --- 文字を白色にする。
黒 --- 文字を黒色にする。
消 --- セリフを消去します。






色・光

色・光タブ(黄色の枠線はSAVEできる箇所)
   

SAVE・LOAD --- 色・光タブのパラメータを保存・読み込み
適用 --- モデルの再読み込みや追加した場合に現状の設定を反映させる。
背 --- 背景色の変更(直下のRGBスライダで調整)
透 --- 背景色をデフォルトの透過色に戻す。

光源の輝度 --- 光源の輝度・色を調整。
光 --- 光源位置回転調整

PL --- 補助光源(橙色のカーソルを移動させ使用)
PL(スライダー)--- 補助光源の輝度調整

髪のツヤ --- 髪のツヤを調整。※
髪の明度 --- 髪の明度を調整。※
TOON  --- 陰影の境目を調整。※
主色と影色 --- 主色と影色の比率調整。※
主色と影色(サブスライダ) --- 全体・髪・顔・体を個別調整(メッセージあり)
瞳の主色 --- 瞳の色を簡易的に調整。※
影色   --- 影色の色を調整。※
影色を髪に適用 --- 影色を髪にも適用させる(元の色には戻せないので注意)※
影-髪R --- リセット(リセットできない場合もあるので注意)※

赤面 --- テレ顔用。※
赤面R --- 赤面リセット。※

Bloom --- エフェクト(透過しないのでスクリーンショット出力時注意)
Noise --- エフェクト(透過しないのでスクリーンショット出力時注意)
Vignett --- エフェクト(透過しないのでスクリーンショット出力時注意)
Depth of Field --- エフェクト(透過しないのでスクリーンショット出力時注意)
Edge(チェック) --- エッジ表示です。画像出力時は、線が透過されます。
彩度(チェック) --- 彩度調整です。
SunShafts(チェック)---エフェクト(透過しないのでスクリーンショット出力時注意)

※基本的にVRoid以外のモデルでは機能しない。



【ディザリングシェーダー項目】
トーンV --- 顔の一部以外は、ディザリングシェーダーに変更(VRoid用)
A --- Face・Eyeのワードのマテリアル以外は、ディザリングシェーダーに変更(汎用)
B ---- 全てのマテリアルをディザリングシェーダーに変更(汎用)
☑(チェック) --- 外形線を付加。
光 --- ディザリングシェーダー用光源位置。
スライダー --- ディザリング調整(10段階)

・ディザリングシェーダーを一度適用すると元のシェーダーに戻せないので注意。戻す時は再度VRMを読み込ませる必要がある。
・ディザリングシェーダーに適用すると一部機能が使えなくなります。


【補助光源について】

光源はドラッグすることで移動可能です。


使用する際はメインの光源輝度を最小にし、メイン光源の縦軸も調整し背景を暗くし使用します。


補助光源を使った例①


補助光源を使った例②




【エフェクト】

エフェクト無し


Bloom(フワっとした明るさ)


Vignett(角の四隅が暗くなる。ケラレ表現)


DOF(背景をぼかす)


Noise(ノイズ)


彩度(モノクロで暗くなる場合は、Bloomか光源の輝度で補正)


SunShafts(光の差し込み)







背景

背景タブ


2D背景(チェック)--- 表示・非表示の切替。
2D背景読込(ボタン) --- 画像の読込(PNG・JPG)
背景移動(奥前左右上下) --- 背景の移動。
背景回転(<>) --- 背景の回転。
P0 --- 位置を0にする。
R0 --- 回転を0にする。
遅早 --- 移動速度。
背景スケール --- 背景の大きさ。
AlphaCutoff --- 背景に透過PNG画像を使用した場合、エッジ調整が可能
カメラと同期(チェック) --- 背景をカメラに追従させます(若干ズレる場合あり)
ロック(チェック) --- 背景はマウスドラッグで移動出来ます。他の作業時に不用意に動かさない為の機能です

スライダ-(黄色部) --- IKの切り替え(VRoid用)
R(黄色部)--- 複数体のVRoidが同じポーズする場合、シンクロ動作を切ります。
チェック(赤色部) --- 設定不可(ReadOnly)

2D小物(チェック)--- 表示・非表示の切替。
2D小物読込(ボタン) --- 画像の読込(PNG・JPG)
3D小物(チェック)--- 表示・非表示の切替。
3D小物読込(ボタン) --- 3Dモデルの読込(VRM)
2D/3D操作切替(スライダー)--- 操作の切替(2D画像・3Dモデル①・3Dモデル②)

追従(右手・頭・無・体・左手) --- 最初に読み込んだモデル(マスタ)の指定の場所に小物を追従させます。揺らぎを与えた時や、手に小物を持たせたままポーズを決める際に使用。

背景移動(奥前左右上下) --- 背景の移動。
背景回転(<>) --- 背景の回転。
P0 --- 位置を0にする。
R0 --- 回転を0にする。
遅早 --- 移動速度。
小物スケール --- 小物の大きさ。
AlphaCutoff --- 小物に透過PNG画像を使用した場合、エッジ調整が可能。
Vポーズ読 --- 3Dモデルのポーズデータの読込
Vポーズ書 --- 3Dモデルのポーズデータの保存
2D正面 --- 画像(小物)をカメラ対してまっすぐに表示させる。
ロック(チェック) --- 2D小物はマウスドラッグで移動出来ます。他の作業時に不用意に動かさない為の機能です。


シェーダ選択のついて(2D画像のみ有効)】
影 --- 影あり。
半透明 --- 半透明テクスチャ使用時に。
輝度固定 --- 環境光(光源)の影響を受けない。
CutOff --- 透過PNG画像を使用した場合、エッジ調整が可能。
ディザリング --- ディザリングシェーダー。

※2D小物はマウスでのドラッグ移動が出来ますが、テクスチャ裏面からのドラッグ移動は出来ません。


【小物位置調整】

各小物の位置調整は、以下のスライダー切替て操作します。
スライダー左 : 2D画像
スライダー中 : 3Dモデル①
スライダー右 : 3Dモデル②




【IKの切り替え VRoid専用】

複数体vroidを読み込ませている場合、IK用カラーボールを切り替えて各vroidのポーズ調整が可能。





【注意】 

モデル前面に2D画像がある場合、ポージング用のカラーボールが動かなくなります。


透過PNGだと透過していてわかりませんが、実際こんな感じでカラーボールが隠れてドラッグできません。


カメラのアングルを変えるか、2D画像を一旦非表示すれば対処できます。







揺らぎ

揺らぎタブ
 

【注意】このタブの機能群は、試作機能なので若干動作が不安定です。

R(ボタン) --- 揺らぎ項目リセット

パーリンノイズ(オン) --- モデルに回転動作(パーリンノイズ)を与えます。
パーリンノイズ(オフ) --- モデルに回転動作(ストローク)を与えます。
0・1・2 --- モデル選択。

手の振り --- 手のストローク動作。
同期 --- 左右同じストローク量にします。
反転 --- 左右反転。
手首 --- 手首有効。
足首 --- 足首有効。

LookAt --- LookAtと同期させる。
0・1・2 --- モデル選択。
左右・上下・前後 --- モデルの中心からのストローク動作。

小物原点設定 --- 複数体のVRoidを同じポーズにさせる場合、シンクロ動作をオンにする。
初期位置 --- モデル1・2を初期位置に戻す。(モデル0の両脇)
xyz0 --- すべてのモデルを原点位置に戻す。(全てのモデルが重なる)


まばたき --- まばたき動作を有効にします。
口パク --- 口パク動作を有効にします(切・ノーマル・クリック・頷きと同期)
頷 --- LookAt(ヘッド)に追従させる。口パクが有効でないと機能しません。
マイク口パク ---マイクから音声入力で口パクさせます(OSのマイク設定が必要場合あり)※
マイク感度 --- 小←→大
モニター音量 --- 小←→大 (マイク入力音のモニター音量)
FFT --- 指定された周波数帯域で口パクさせます。(調整範囲は、50~1550HZ)
上スライダは、下限周波数の指定
下スライダは、上限周波数の指定


FFTを無効にする場合は、FFTの下スライダーを左いっぱいにします。



雨・蛍 --- パーティクルシステムによる演出
花火(スライダー) --- 連発←→単発 (スライダーを動かすことによって始まる)※1
反転 --- モデルの正面側で花火を打ち上げる(カメラを180度回転させ確認)
R(ボタン) --- 大雨・蛍・花火のリセット
滴右・左 --- 人の生理現象用?12パターン(ボタンを押していくと次パターンに変わる)
※1※2
滴R --- 滴左右リセット
起点表示 --- スモーク色のボールが表示され、滴の起点がドラッグ移動できます。
滴追従 --- 滴の起点をVRoid(ヒップ・バスト左右・ハンド左右・ヘッド)のどれかに追従。追従箇所は画面下に表示される。

コマ送り --- 揺らぎやストローク動作を与えた状態で、数フレーム動かして止める。
撮影 --- ScreenShotフォルダに直接SAVE。
コマ送り解除 --- コマ送り後は必ずこのコマ送り解除を押すこと。(フリーズと間違える為)
細_荒 --- フレーム間の時間。

※口パク機能はマイクが必要です。
※口パク機能は動作が遅延する場合があり、その時は一旦口パク機能を無効にし再び有効にします
※1 花火・滴のパーティクルは、発生起点をドラッグすれば望む場所へ移動できる(若干コツはいるが・・)
※2 滴のパーティクルの発生起点位置は、ポーズデータにセーブされます。


【GIF作成ボタン】

GIF作成ボタンが画面左上にあります。
GIF出力サイズは固定で、640×640ピクセル(2秒 16フレーム)です。

ボタンは現状消せないですが、透過png画像出力時は写りこみません。

GIFアニメーション出力例








マイク(2D小物)を持たせ、揺らぎを与えてみる。





【ポージング】キーボードの基本操作

【注意】
キーボードによるポーズ調整は、現状(ver4.6)ではうまく機能しません。



このモードは、IKと併用はできません。
このモードからIKモードに戻すとIKが優先され、ポーズがリセットされますので、このモード中にポーズセーブ(旧)を行って下さい。。


■■キーボード■■
赤枠 --- モード選択
緑枠 --- 部位選択 (ノートPCはNumlockが必要)
青枠 --- 軸操作

【基本操作】
モードを選択し、部位選択キー(テンキー)を押したまま、軸操作を行う。

【軸操作】
A --- x軸+
Z --- x軸-
S --- Y軸+
X --- Y軸-
D --- Z軸+
C --- ℤ軸-
R --- 指定部位の軸リセット





【ポージング】 上半身モード

■■キーボード■■
F1 又は テンキー(/) --- 上半身モード

【部位】
1 --- 右手首
3 --- 左手首
4 --- 右ひじ
5 --- 腰 + 背中
6 --- 左ひじ
7 --- 右肩
8 --- 首 + 頭
9 --- 左肩

【軸操作】※部位キーをしたまま
部位 + A --- X軸+
部位 + Z --- X軸-
部位 + S --- Y軸+
部位 + X --- Y軸-
部位 + D --- Z軸+
部位 + C --- ℤ軸-
部位 + R --- 指定部位の軸リセット





【ポージング】 下半身モード

■■キーボード■■
F2 又は テンキー(*) --- 下半身モード

【部位】
1 --- 右足首
3 --- 左足首
4 --- 右ひざ
6 --- 左ひざ
7 --- 右股関節
8 --- 尻(モデル全体の回転)
9 --- 左股関節

【軸操作】※部位キーをしたまま
部位 + A --- X軸+
部位 + Z --- X軸-
部位 + S --- Y軸+
部位 + X --- Y軸-
部位 + D --- Z軸+
部位 + C --- ℤ軸-
部位 + R --- 指定部位の軸リセット





【ポージング】 指モード

■■キーボード■■
F3 又は テンキー(-) --- 左右指モード
F4 --- 左指モード
F5 --- 右指モード

【部位】
0 --- 親指
1 --- 人差し指
2 --- 中指
3 --- 薬指
4 --- 小指

【軸操作】※部位キーをしたまま
部位 + A --- X軸+
部位 + Z --- X 軸-
部位 + S --- Y軸+
部位 + X --- Y軸-
部位 + D --- Z軸+
部位 + C --- ℤ軸-

・軸のリセットは 部位キーを押しなおすとリセットされます。
・必要ない回転軸は無効(動かないよう)にしています。



キー操作一覧

F1 --- 上半身モード
F2 --- 下半身モード
F3 --- 左右指モード
F4 --- 左指モード
F5 --- 右指モード

F9 --- ウィンドウ・フレーム透明化※
F10 --- GUI表示・非表示 
マウス(左ボタン)を押しながら、(右ボタン)をクリック  --- GUI表示・非表示


キーボード(←・→) ---  カメラ水平移動※
キーボード(↑・↓)---  カメラ垂直移動※
キーボード(Shift)+キーボード(↑・↓) ---  カメラズーム※
キーボード(Shift)+キーボード(←・→) --- カメラ水平回転※
E --- カメラ位置リセット※
W --- IK用 赤球と緑球の位置リセット ※

Ctrl + ↓↑ --- 光源 Ⅹ軸回転 ※
Ctrl + ←→ --- 光源 Y軸回転 ※
Ctrl + E  --- シェーダーリセット(光源位置含む)※

テンキー(/) --- 上半身モード(F1でも可)
テンキー(*) --- 下半身モード(F2でも可)
テンキー(-) --- 左右指モード(F3でも可)

テンキー0~9 --- 部位選択

部位 + A --- X軸+
部位 + Z --- X軸-
部位 + S --- Y軸+
部位 + X --- Y軸-
部位 + D --- Z軸+
部位 + C --- ℤ軸-
部位 + R --- 指定部位の軸リセット


※GUIから操作可能

注意事項・補足説明

・パラメーター及びポージング変更は、比較的新しいバージョンのVRoid StudioでエクスポートしたVRoidモデルのみ可能です。古いバージョンのVRoidモデルは読み込めない可能性があります。

・デスクトップマスコット機能でモデルを見失った場合、VRM-PNGのタスクボタンをダブルクリックし、キーボードのEキー(カメラリセット)を押します。


カメラ位置が初期化され再び表示されます。

▲ページトップに戻る