【備忘録?】VRC用モデル→VRM→Raft導入

1ヶ月前にやったことなので忘れかけている内容を思い出しながらメモしています あくまでご参考に!

変換を行なったモデル

🦈VRC想定オリジナル3Dモデル「ふかみ-Hukami-」🦈 - Routie's Lab - BOOTH 

参考にしたページ

VRChat AvatarのVRM0への変換 #VRChat - Qiita

VRMモデル作成についての手順 #Unity - Qiita

【Raft】MODで変身!RaftVRM導入方法解説 | Steam Gamers (steam-kouryaku.com)

DLが必要なものは上記を見るとだいたい揃うはず

 

揺れものも変換したいときは下記(有料)を使う。(根気よくやれば手動変換も可か)

VRMSpringBoneTool - VRMアバターの揺れもの一括自動設定ツール - なるるるるな / NALULUNA - BOOTH

 

個別事例っぽい注意事項

Unity内:カラバリ変更

ProjectウィンドウでMaterialが置いてあるディレクトリを開いて、Sceneウィンドウに表示されている適用先モデルへドラッグする。

Unity内:シェーダの設定

liltoonのままではVRMに変換したとき表示が真っ白になる。Materialが割り当たっているものについてはInspectorで下記を押して変換する。

Unity内:透過部分の対応

メガネなど透過部分の変換はさらなる対応が必要。

liltoonとMToonの違いをよく理解し、画像編集で必要なものを揃えて割り当てる。(ここでは説明しきれないので適宜ググってください)

Xユーザーのはすのはさん: 「学び:liltoonはアルファチャンネル情報をテクスチャとは別の白黒画像で持つ MToonはテクスチャpng内蔵のアルファチャンネル情報を見る(たぶん)」 / X (twitter.com)

Unity内:各種スライダー

Hukami_Body_Base を選択し、Inspector > Skinned Mesh Renderer > BlendShapes にある。

 

RaftVRM設定ファイル(settings_プレイヤー名.txt)

こんな感じにしています

SpringBone関係の値は先述のVRMSpringBoneTool適用済みの場合のみ関係あり。
~Stiffnessがテンプレートのままだと荒ぶった記憶あり。

// リアルタイムに設定を反映するか
// (設定を合わせる時だけ有効にして下さい 有効=True 無効=False)
RealtimeSettings=True

// オリジナルのモデルスケール
OriginalModelScale=1.2

// VRMのモデルスケール
VRMModelScale=1.0

// オリジナルのモデルのボーン長さ倍率
OriginalBoneLengthRate=0.75

// 腰の高さ倍率
HipHeightRate=1.0

// 腰のYオフセット
HipsYOffset=0.0

// TPS視点カメラオフセット
ThirdPersonCameraOffset=(0.0, 0.5, -2.0)

// TPS視点カメラ向きY補正
ThirdPersonCameraLookYOffset=0.5

// FPS視点カメラオフセット
FirstPersonCameraOffset=(0.0, -0.02, 0.05)

// FPS視点時にVRMを表示するか
FirstPersonVisibleVRM=True

// SpringBoneの硬さ倍率
SpringBoneStiffness=8.0

// SpringBoneの重力倍率
SpringBoneGravity=-0.2

// SpringBoneの牽引倍率
SpringBoneDrag=0.05

// MToon:リムカラーの強さ
_RimColorIntensity=1.0

// MToon:エミッシブカラーの強さ
_EmissiveColorIntensity=1.0