いわゆる「よくある質問」的なものです。◯ぁっきゅー
もしかしたら、このページだけでも良かったんじゃないかな…(今更)

必要なPCスペックについてもっと詳しく

適当に自分の環境でも書いておきますね。(当然デスクトップモード)
・i7-3820、メモリ16GB、GTX660Ti
インテル製のCPUでグラフィック描画機能の付いているものなら、一応グラボ無しでも動作したとの情報もあります。
VR環境で遊ぶなら、最低でもGTX1060は必須です。

Unityのアカウント登録で詰まる

パスワードの登録には、数字+英字の小文字だけでなく大文字も必要です。

Unityアセットの導入

有料・無料のアセットを使ってみましょう。無料でも3Dモデルがあったりします。外部サイトなどのアセットまとめも参考になります。
UnityからAsset Storeウィンドウを呼び出し、好きなアセットをダウンロード、使うプロジェクトを開いた状態でインポートしましょう。
一般的な規約の場合では、テクスチャ改変等も許可されています。アセットによっては独自のライセンスが付いている場合もあります。
Unity公式 Asset Portal にも詳しい情報があります。

アセットストアで買いたいものがあるんだけど、クレジットカードが無い…

どうやら「Vプリカ」でも購入可能なようです。
スーパーチャットにも使えるので、18歳以上の方は考慮してみるのも?

MMDをVRChat用に加工する為の、お勧めサイトは?

個人的にはこちらの「NF的日常生活」さんや、
デルタフォースの日記」さんの記事にお世話になりました。

モデルを揺らしたい・スカートを足が貫通してしまうのをどうにかしたい


・無料(ダイレクトボーン無し)でロングスカートなどを足が貫通しないようにしたい
スカートを独立したスカートではなく足に関連付けて足の動きに連動させると、疑似的にスカートを動かせる為貫通しなくなります。
(下記にある手順でスカートのウェイトを足ボーンに変える)

ボーンに連動して動く範囲を定めるウェイト調整はBlender側で行います
・ウェイト調整
オブジェクトモードなどのモード表示をしている所をウェイトペイントに変更
画面右側の▽マーク内にある頂点グループから編集したいボーンを選ぶ
そのボーンの担当している範囲が着色されて表示される。青が未設定、赤に近付くほど度合いが強い。動かす所は真赤でok
画面左側のツールタブを選ぶとウェイトペイント設定を調整できる。
ウェイトは繊細な調整を行う場合を除き基本MAXor0で扱うと良い。ウェイト0%にすると消しゴムになります。


※ダイレクトボーンの設定をする際に、忘れてはいけない注意事項※

画面中央上側の再生ボタンを押さないとDynamic Boneなどの動作は開始(反映)されません。
再生を有効化したあと#Sceneを選択することでモデルを動かすと動き具合が確認できると思います。
VRChat内での動作と全く同じではないので、機微にこだわる人はあくまで目安としてください。

また、再生状態でも各種設定などはできますが、再生状態ではアップロード等はできず、再生を解除すると再生前の状態に復元されます
設定を調整する場合は再生を解除してから行うか、良い感じになった状態をメモなり頭で記憶するなりして解除後改めて調整を行ってください。

Dynamic BoneのRootに動かしたい部分の設定もちゃんとしているはずなのに、Spineのモデルに反映されてない場合。

考えられる可能性は3つ。
1つ、動かす先が無いなど、動かせないボーンに設定してしまっている。
2つ、ダイナミクスボーンの処理が別の何かに遮られてしまっている。
3つ、そもそもボーンがモデルに連動しきれていない。(揺れでモデルが崩壊する場合はこれ)

1つめは設定しようとしたボーンより1階層上のボーンに設定してルート設定を行うと動くようになると思います。
2つめは「Script Execution Order」でDynamic BoneをDefault Timeよりも下(+側)に設定するのが正解のようです。(数値を100でok)
※通常、異なるスクリプトの関数は読み込み順に処理される。(要は先に設定したものが優先される)
 そこでScript Execution Order(スクリプト実行順)設定により優先順序を変更できます。
 (メニュー: Edit > Project Settings > Script Execution Order )
3つめはボーンの設定(orウェイト設定)を調整する必要があります。

※揺れ範囲は良いけど揺れ方が思ってたのと違う!という場合はダイナミックボーンの設置場所や動作設定を調整してください。
(この場合の詳細はVRChat日本wiki該当ページなどを参照してね)



UnityアセットストアにてDynamic Boneを購入・DLしてUnityにインストールします。
画面左側のDefinition項目のアバターモデルの▼をたどり、揺らしたいものの1階層上にaddからDynamic Boneをセット
画面右側のInspectorに追加されたDynamic Bone(Script)のRootに動かしたいボーン群をセット
※このとき揺らしたいものの範囲が末端(次が無い状態、一番先端のボーン)だけだと揺れないようなので注意
各項目の意味などはVRChat日本wikiのDynamic Bone解説をしているページを参照してください

Dynamic Boneを使用する際は、極力、できれば必ず下の方にあるDistant isableにチェックを入れてください。
離れた状態のときにDynamic Bone描画を行わないというチェックらしいので、
恐らくVRChat内での負荷軽減(遠くに居る人に余分な負荷がかからなくなる)に使えるものだと思います。
*1

・スカートや髪が揺れた時になるべく身体を貫通しないようにしたい場合のDynamic Bone設定例
身体側の貫通させたくない場所の適当(本来の意味の方)な部位にDynamic Bone ColliderをAdd
Radiusという項目を0.001など数字を入れて程よいサイズに調整
上記の部位に弾かせたいDynamic BoneにあるCollidersのSizeに任意の数字を入力すると数字分のElementが追加されます
Elementに先程作ったDynamic Bone Colliderをセット
Dynamic BoneのRadiusという項目(デフォルト時0)に0.0004など程よいサイズに設定
こうすることでDynamic Boneで動作する側にも接触判定が発生し、ElementにセットしたDynamic Bone Colliderに反発するようになります

*2

・Blenderでモデルがちゃんと動くか確認したい
ボーンを選択した状態で、現在のモード表示をしている所をポーズモードにする。
動きを確認したいボーンを選択(複数選択はShiftを押したまま選択)してRキー後にマウスを動かす

スケルトンのポーズ位置・レスト位置
[Ctrl]+[A]で、現在のPoseModeの状態をRest状態(EditMode の状態)にすることなどができます。
ここは基本触らないですが、改変で大幅に改造したときなどに変更が必要になることもあります。

表情/ポーズを付けたいんだけど…

VRモードでしか出来ないと思われがちですが、デスクトップモードでも可能です。

表情用の animation clip の作り方などはこちらのサイト様を参考にしましょう。
(指の形の作業は、とりあえず無視しても大丈夫です)近い内容の動画 詳細な解説

作成したanimファイルをcustomoverrideに登録する際は、下記が各ファンクションキーと対応しています。
(ついでにVIVEコントローラー(右)での適当な位置を追記)
Fnキーアニメーション名Viveボタン
F1IDLE(デフォルト)に戻す
F2FISTトリガー
F3HANDOPENグリップボタン
F4FINGERPOINT
F5VICTORY右上
F6ROCKNROLL右下
F7HANDGUN左下
F8THUMBSUP左上

あとはVRChat内でShiftキーと一緒にファンクションキーを押してみましょう!左Shiftと左手が、右Shiftと右手が対応しています。
両手で別のアニメーションを呼び出すことも可能です。利用例*3 *4

立ちポーズ/Emoteも同様に、animationを作成してcustomoverrideに追加すればできます。
VRCSDK\Exanples\Sample Assets\Animation\Idle(.fbx) 内にあるIdle-sampleアニメーションをコピーしていじると楽です。Previewがおじさんアバターの場合は、Hierarchyから自分のアバターをドラッグして読ませてください。
IDLEに設定で、立ちモーションに適用。Emote1-8に入れるとEmoteから再生できます。IDLEはともかくEmoteに使う場合は適当な長さのアニメーションにしましょう。長すぎてもキャンセル不可です。逆に表情で使われるFistなどに入れても手くらいしか動かない模様。(この辺ちょっとわからない)
IDLEに入れた際、VRC上では足の位置が調整される場合があります。アニメーション内のAnimator.Root T.y(アバターのy位置)などを調整すると違った結果になります。(調整させない方法が分からない) (追記:Root T.yを1にすることで改善?)

AFK/添い寝アバターを作りたい(Genericアバターの作成)

Genericアバターを作成すると…
  • VRユーザー→HMDを外しても体が倒れない
  • デスクトップユーザー→自由に寝ることができる

現状の仕様(バグ?):
  • View PositionはY以外の値が無効化されています。
  • View Positionが低すぎると、メインメニューが見切れたり(デスクトップ)、視点が地面にめり込んだりします(VR)。

作成方法はこちらに写真入りでまとめてありますが、日本語でも簡単に説明します。
https://docs.google.com/document/d/10BuA_ybyXSSXqX...
  1. まずはProjectにあるアバターを複製し、RigをGenericに設定します。(Humanoidアバターがすでにある場合、複製しないとHumanoid版が参照できず面倒に)
  2. Hierarchyにあるツリーを展開し好みのボーン(Left legなど)を選択、Scene上のアバターを直接操作して好きなポーズを作ります。アバター本体(一番の親、デフォルトはアバター名)に対する移動・回転(Transform-Position/Rotation)は無効化されるため、 Armature以下を操作します。
    1. 左上の回転マークを選択して現れるガイドをドラッグすることで、各ボーンを回転できます。
    2. そのすぐ右にある「Local/Global」を切り替えることで、ボーンの向きに沿って操作できたり(Local)、3軸に沿った操作ができたり(Global)します。
    3. また、メニュー-Window-Layouts-4 Splitを選択することで、複数の視点で同時に確認・操作が可能です。(戻すには同様にLayouts-Defaultを選択)
  3. 表情はメッシュ(Bodyなど)のBlendShapeから直接指定(よくバグる?) or アニメーションとして作成してSimpleAvatarController内で指定しましょう。
    1. VRCSDK\Exanples\Sample Assets\Animation内にあるSimpleAvatarControllerを好きな場所にコピー(必要ならファイル名の変更)。
    2. コピーしたものを選択した状態でメニュー-Window-Animatorを呼び出し、その中にアニメーションをドラッグ&ドロップ。'Entry'と矢印で結ばれるはずです。
    3. 設定できたControllerを、アバターのInspector-Animator-Controllerに指定します。
  4. あとは通常通りVRC_Avatar Descriptorを設定してアップロードすれば完成です。View PositionはなぜかY軸以外無効なので、望む視点に合わせてArmatureを移動させます。(でもY軸を中心に回転することになるので大抵足蹴りを食らわせてしまう) アバターの視点はZ軸(青色)方向です。
完成。髪などが視界に入って気になる場合は、Armatureを移動させる、View Positionを高くするなどで対応できます。(裏側のメッシュを描画しないとかできるのかな…)

SDKのアプデ方法

こちらのページ(VRChat 技術メモ帳)の最後にある「SDK のアップデート」の項を参照。
上書きアップデートはNGです。
(急いでアップデートしなくても支障はない模様?)

解像度を変えたい(デスクトップモード)

ウィンドウのサイズを変更することで解像度の変更ができます。動作の重さも若干変動します。
また、フルスクリーン時のアスペクト比にも影響します。
  1. フルスクリーンの場合はAlt+Enterでウィンドウモードに変更。
  2. メインメニュー(socialなど)を呼び出すことで、マウスがウィンドウ外へ動けるようになる。
  3. そのままウィンドウサイズを調整する。

アイトラッキング・リップシンクしたい

主に偽ねずみv1.2での導入方法を解説。もしかしたら2と7だけでいいかもしれない。2もUnity上でのリネームで対応できませんかね。ついでにリップシンクだけなら7だけで出来るはずです。
  1. BlenderでCatsプラグイン導入
    ReadMeに導入方法から各機能の説明まであります。Google翻訳版
  2. 目を含んだメッシュを"Body"(頭の1字を大文字)にリネームする。
    偽ねずみv1.2だと小文字(body)なので必須。
    また、目までのボーン構造がArmature/Hips/Spine/Chest/Neck/Head/RightEyeとLeftEyeとなっていることを確認する。*5
  3. Bodyのシェイプキーを並び替える(vrc.blink_left、_right、lowerlid_left、_rightの順)(不要?) 参考
  4. CATタブ-EyeTrackingから設定・テストする 参考
    偽ねずみv1.2だとデフォで動いたので設定はいじってない…。
  5. ExportModelで出力
  6. Unityにインポート・Humanoid設定
    Jawに髪ボーンが当たるので外す
  7. AvatarDescriptorを設定
    (設定例) LipSync--Viseme Blend Shape、Face Mesh--Body(リップシンク用BlendShapeが入ったメッシュ)、Viseme:sil--vrc.v_sil、…
    視点を正しく設定しないと視線が変な方を向くらしいです。偽ねずみv1.2にはリップシンク用のBlendShapeが用意されています(vrc.v_aaなど)。
    2.でメッシュ名を変更しているので表情は作り直し…。Animationウィンドウから各キーのメッシュ名を変更すれば使いまわせます。
    似たアバターがいっぱいあるときは右上の歯車から「Copy/Paste Component」でコピペが便利かも(FaceMeshは指定し直す)
  8. Uploadして完成
  • 表情などのアニメーション内でアイトラック/リップシンクで使用しているシェイプキーを使っていると正常動作しないようです。
  • 瞬きに関してはAnimationクリップを使うという方法もあります。アップデートによってレガシーアニメーション使用不能により不可。Animatorを使った方法に移行?

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

 

メニュー

(SS専用スレもあります)
右メニュー
(スマホ向け)

アンケート

現在非開催中です

過去分

公式リンク集

公式動画


(初代モデルでの動画)

Twitter

ハッシュタグ集

フリーエリア

どなたでも編集できます

メンバー募集!