見出し画像

VRChatのアバターMMD対応まとめ

はじめに

VRChatでアバターをMMD対応(ダンス中の表情やリップシンク)する方法をまとめました。
購入アバターで既に対応されていれば、特に気にする事は無いかもですが、非対応だったり自作のアバターを作成する際に、MMD対応をするとなるといくつか考慮すべき点があります。

ネットで検索して解決策は出てきますが、実際方法は複数あったり、方法によって注意点もあるため、自分が調べた内容を今回1つの記事にまとめました。
これからアバターをMMD対応をしたい、あるいは対応させたのに上手く動作しない場合の解決策として参考になればと思います。

前提

まず、MMDをする上で考慮すべき点は大きく2つです。

  1. 表情の対応

  2. FXレイヤーの対応

今回の記事では、それぞれの詳細と設定方法を説明していきます。
内容によっては、普段触らない部分やややこしい部分もあるかもしれません。

********************************
実際に操作する前にバックアップは必ず取るようにしてください。
プロジェクトやアバターが壊れても自己責任でお願いします。
********************************


2024/03/25追記 

以降で説明する対応は、一部既存の構造を変更しないと対応出来ない箇所がありました。
ですが、最近これらの対応を非破壊でおこなってくれるツールがBoothにありましたので、紹介しておきます。
「綿100%のお布団様:MMDSetup」※下記BOOTHリンク参照
利用マニュアルも含まれているので、操作は難しい部分は無いかと思います。
ただし、このツールを使っても本記事の後半に記述している「3,MMDWorld別の対応」は、結局必要になります(WriteDefaultがONのアバターのみ対象)

2024/03/25追記ここまで↑↑

1,表情対応

①MMD表情モーフについて

まずMMDの表情は、指定されているシェイプキー名を使う必要があります。(以下、MMD表情モーフと記載)

アバターで既に、ウィンクやはぅ目などがあったとしても、シェイプキーの名前が違うと反応しません。
そのため、新たにMMD表情モーフで指定されているシェイプキーの追加をおこなう必要があります。

MMD表情モーフですが、以下のニコニコ動画の記事に一覧が記載されていますので、参考にしてください。
見れなくなってた期間もあったのか、画像を転載しているサイトもありますね、
https://site.nicovideo.jp/ch/userblomaga_thanks/archive/ar1471249

これらのシェイプキーを表情オブジェクトのメッシュに追加する必要があります。
Unity上で表情のシェイプキーが入っているオブジェクトを開いてみてください。
自分のアバターだと、一部だけ対応してますが、こんな感じですね。

MMD表情モーフ対応:自分のアバターの場合

この画像のように、すべてのMMD表情モーフに対応せず、主要なものだけ対応すれば十分だと思います。
これ意外のやつは、曲中あんまり使われてない気がしてます。

②MMD表情モーフの設定&追加方法

ウィンク・あ・い・う・えー・お に該当する表情シェイプキーはHumanアバターであれば、基本入ってるでしょうし、はぅ目なども購入アバターであれば大半設定されていると思います。
これらの既存シェイプキーをもとに、MMD表情モーフ用に名前を変更して複製追加します。

複製追加は、Boothで「がとーしょこらのおみせ」様が無料で提供している
「VRCDeveloperTool」を使うのが楽です。
ただ、他にもツールはあると思うので、普段使ってるもので対応出来るのであればそれでよいかと。

使い方は、ヘッダーのメニューから、VRCDeveloperTool > Mesh > ShapeKeyName Changer を選択し、出てきたウィンドウに表情のメッシュが含まれるオブジェクトをドラッグアンドドロップします。
シェイプキーの一覧が出てくるので、既存シェイプキーに対して対応するシェイプキー名を右側に入れます。
一番下の「duplication ShapeKeys」にはチェックを入れておきましょう。
このチェックを入れることで、既存のシェイプキーを残したまま、複製追加ができます。 

シェイプキーの複製追加

人によっては、FBXから改変する人もいるかと思います。
その方たちは上級者だと思うので、説明不要だと思いますが、Blenderであれば「新規シェイプをミックスから作成」で、複製できます。

③オブジェクト名を「Body」にする

表情のシェイプキーについては、上記方法で簡単に出来るのですが、注意点として、表情シェイプキーが入っているオブジェクト名は、「Body」である必要があります。
アバターによっては、「Face」などになっている場合もあるかと思います。(以下、オブジェクト名が「Face」だった場合として記述します)
その場合、これを「Body」に変更しなければなりません。

ただ、オブジェクトの名称は簡単に変更出来るものの、問題点として既存の表情Animationファイルのパスが変わってしまうため、ハンドサインなどの表情変化が動かなくなってしまいます。
そのため、対策が必要となりますが、それなりに修正が必要ですので、バックアップは絶対にとっておいてください。

 <対策案1>Animationのパスをすべて変更する

まともな方法としては、これしかないです。
各Animationのファイルを開き、パスをすべて「Body」に変更します。
たとえば、表情のオブジェクトファイル名のパス「Face」をすべて「Body」に変更するという事です。
きちんと修正するのであれば、1つ1つやるしかありません。

Animationパス変更

ただ、裏技としてAnimationファイルはテキストで開く事も出来るので、Animationファイルを右クリック > Show in Explorer で実体のファイルを探し、これをテキストエディターで開きます。
そこでパスが「Face」となっている部分を「Body」に一括置換します。
これでも対応はできます。
※なんどもいいますが、自己責任でお願いします。

実体のファイルを直接開く

 <対策案2>デフォルトの表情オブジェクトをBodyにして、FXレイヤーで通常の表情オブジェクト切り替える

何を言ってるのか分からないと思いますが、要はMMD用の表情オブジェクト「Body」と通常の表情オブジェクト「Face」を用意しておき、MMDの時だけメニューから切り替えて「Body」を使う、という手法です。
これであれば、Animationファイルのパス変更も不要になります。

また、後に記載するFXレイヤーの無効化する手法でもこの方法は有効です(確認済)。
WeiteDefautをONにする対応であれば、これでいいのかもしれません(すみません、WeiteDefautをONした場合は試してないので、あくまでも予想となります)

オブジェクトのON/OFFとやり方は同じなので、作り方は各自で調べてください。
ただ、問題点としては、FXレイヤーを無効化する手法を取る場合は、「Body」をUnity上でONしておき、アバター読み込みと同時に「Face」に切り替えるFXレイヤーを組んでおく必要があります。
で、FXを無効にした際に「Body」のデフォルトに戻る、という感じですね。

また、Worldによっては、初期読み込みされたオブジェクトに対してのみ影響を受けるギミックがあったりするので、「何故か顔だけ演出の影響を受けていない」という事が稀にありますので、この点は覚えておいてください。


2,FXレイヤー対応

対応な必要なケース

そもそも対応が必要なケースとしては、FXレイヤーの中にWriteDefaut:OFFのステートがある場合です。
ただ、VRChatはWriteDefaut:OFFを推奨しているため、MMD対応とは相性が悪いという状況があります。

それらを踏まえた上で3つの対応方法を説明します。

【方法1】FXレイヤー消し、別アバターとしてアップロードする

最も簡単な手法です。
FXレイヤーが影響するのであれば、消してしまおうという話です。

メリットとしては、超簡単である事
デメリットとしては、別アバターとしての扱いになる事と、ハンドサインによる表情変化、着替えなどFXレイヤーで設定している動作やメニューが使えなくなる事です。
単に踊らせたいだけなら、時間もかからないのでこれでよいかと思います。

<設定方法>
まず先に、別アバターとしてアップロードするので、アバターのオブジェクトをコピーしましょう。
アバターオブジェクトをクリックして、Ctl+D でコピーできます。

次に、コピーしたアバターをクリックして、Inspectorに表示される「VRC Avatar Descriptor」内にあるFXレイヤーを削除します。
FXの右にある「X」ボタンをクリックしてください。
「Default Non-Transfrom」となれば、OKです。

FXレイヤーの設定場所
消すと、Default Non-Transfrom になる

次に、別アバターとしてアップロードするため、ビルドIDも削除します。
アバターをコピーしていた場合は、ここにビルドIDが設定されていると思うので、「Detach(Optional)」をクリックすれば消す事ができます。
このビルドIDがVRChatにアップロードされているアバターの固有IDとなっています。
なので、ここを消す事で未アップロードの新規アバターとして認識されます。

空白になっていれば、新規アバター扱いになる

【方法2】WriteDefaultをすべてONにする

FXレイヤーに設定されている各レイヤーのStateをすべてWriteDefault:ONにします。
メリットとしては、アバターを分けずに済むことと、MMD中でも着替えなどのメニューがそのまま使える事
デメリットとしては、最初に説明したように、WriteDefault:ONは、VRChatでは非推奨となっています。
そのため、今後VRChatやSDKのアップデートにより、意図しない動きになる可能性があります。

====<補足>====
※2023/05/14追記
理解しておいて欲しい点として、WriteDefaultをすべてONにする事により、元々想定WriteDefault:OFFとして作らているレイヤー構造とアニメーションが影響を受け、意図しない動きを発生させる可能性はあります。
なので、レイヤー全体がWriteDefault:OFFで作られている場合は、不用意に変更しない方がよいです。
Twitterなどを見ていると、とりあえずツールでWriteDefault:ONに一括
変換すればいい、みたいなツイートを見かけたので、既存の設定をいじる事によるリスクがある事は認識が必要です。
============

ちなみに購入アバターの場合は、大半がWriteDefault:ONになってる事が多いと思います。
なので、MMD対応を追加する場合は、WriteDefault:ONのままで使った方が無難かと思います。
VRChatの推奨に合わせて、WriteDefault:OFFに変更していってもいいのですが、パラメーターや遷移条件、各Animationの動きを理解しておかないと、変更によりおかしな動きになる可能性もあるため、慣れていない人は触らない方がよいかと。

また、MMD対応がされているアバターは大半はこのパターンで作られているかと思います。

<設定方法>
難しくは無いですが、WriteDefault:ONにする方法も一応説明しておきます。
FXレイヤーの開き各レイヤーのStateを選択(Ctlボタンを押しながら複数選択でもOK)し、右のWriteDefaultをON(チェック)します。

StateのWriteDefault設定をONにする

1つ1つStateの選択が面倒だれば、範囲選択した後にAnimator Statesをクリックすれば、Stateに絞れて、上と同じ状態になります。

範囲指定で選択してからAnimator Statesを選択してもOK

ちなみに、自分は使ってないですが、すべてのStateのWriteDefault設定を一括でON/OFF出来るツールもあるようなので、それを使ってもよいかと思います。

注意点としては、どこか1つでもWriteDefaultがOFF(未チェック)だと、MMDでの動作がしなくなるため、ONにし忘れてるものが無いかよく確認してください。

また、MMDWorldに説明がありますが、レイヤーの2番目・3番目を無効化するとの事なので、LeftHand/RightHandなど、ハンドサインによる表情変化を設定しているレイヤーは、上から2番目・3番目に位置するようにしておきましょう。

【方法3】FXレイヤーを無効化する処理/メニューを追加する

FXレイヤーをメニューから手動ON/OFFする処理を追加します。
メリットとしては、WeiteDefaut:ONにする必要が無い事、アバターを分けずに済む事です。
デメリットとしては、設定が複雑である事と、FXを無効化するためMMD中の着替えメニューは使えなくなります。
直前まで着替えた状態であっても、Unity上の服装(アップロード時の服装)に戻されます。

<設定方法>
MMD用の設定を追加するレイヤーは、Baseレイヤーになります。
Baseレイヤーは、アバターをクリックしInspectorに表示される「VRC Avatar Descriptor」内にあるBaseに設定されているレイヤーです。

Baseレイヤーの場所

Baseレイヤーを開き、パラメーターに「InStation」と「MMDMode」を「Bool」で追加してください。
「InStation」は、VRChatで定義されているパラメーターのため、必ずこの名称にしてください。
「MMDMode」は、任意のパラメーター名にしても大丈夫です。

Baseレイヤーにパラメーターを追加する

次にLocomotionのレイヤ内に、新規のStateを追加します。
追加したState名は何でもいいですが、「MMD_Mode_ON」などわかりやすい名称にしておきましょう。
次にAnyStateからTransitionを繋ぎ、下記の設定をしてください(図も参照)
Has Exit Time:チェックは外す
Fixed Duration:チェック入れる
Transition Duration(S):0

Conditionsは、それぞれの以下の設定です。
InStation:true
MMDMode:true

AnyStateからのTransition設定

次に「MMD_Mode_ON」を選択した状態で、Inspectorの「Add Behavior」をクリックして、「VRC Animator Tracking Control」を追加します。
追加したら、すべて「Animation」にチェックします。

次に再度、Inspectorの「Add Behavior」をクリックして、「VRC Animator Locomotion Control」を追加、「Disable」を選択してください(緑文字になればOK)。

続いて、Inspectorの「Add Behavior」を再度クリックして、「VRC Playable Layer Control」を追加します。
Layerの項目は「FX」を選択し、Goal Weightを「0」に設定します。
これで、FXレイヤーは無効化する設定になります。

「MMD_Mode_ON」の設定

次にMMDModeがOFF時のStateを作成します。
先程作った、「MMD_Mode_ON」を「Ctl+D」でコピーしてください。
「MMD_Mode_ON 0」というStateが複製されるので、名前を「MMD_Mode_OFF」に変更してください。
こちらも任意の名前でOKです。

Inspectorから設定を変更します。
基本には、先程作った「MMD_Mode_ON」とは逆の設定になります。
「VRC Animator Tracking Control」は、全て「Tracking」
「VRC Animator Locomotion Control」は、「Enable」
「VRC Playable Layer Control」は、Layerの項目は「FX」を選択し、Goal Weightを「1」に設定します。

「MMD_Mode_OFF」の設定

次に「MMD_Mode_ON」から「MMD_Mode_OFF」にTransitionを繋ぎ、下記を設定してください(図も参照)
Has Exit Time:チェックは外す
Fixed Duration:チェック入れる
Transition Duration(S):0

Conditionsは、以下の設定
InStation:false

ON→OFFのTransition

====<補足>====
他のサイトだと、MMDMode:falseも指定するように記載されていると思いますが、個人的には不要と思っています。
というのも、メニューからわざわざ切り替をしないとMMDModeのStateがOFFに遷移しないため、ダンス後にそのままフレンドさんと会話をする場合などに、表情が動かないままになるからです。
であれば、ダンス終了と共にOFFになる(FXレイヤーが有効になる)仕組みにした方が利便性が高いです。
また、メニュー上ではMMDModeをONにしたままなので、そのまま次のダンスをしてもきちんと切り替わります。
なので、MMDWorldに来たらメニューをONにしておけば、いちいち切り替える必要も無くなります。

ただし、前半に記載した「Body」のオブジェクト名対応をしている場合は、ON/OFFの切り替えをしないと、オブジェクトが切り替わらないので、そこは注意が必要です。
============

次に「MMD_Mode_OFF」から「Exit」にTransitionを繋ぎます。
Settingは下記の設定をしてください(図も参照)。

Has Exit Time:チェックは入れる
Exit Time:0.5
Fixed Duration:チェック入れる
Transition Duration(S):0.25 0でよいです。
Conditionsの設定は不要

ExitへのTransition設定

<Expressionメニューの追加>
Baseレイヤーの設定は終わったので、メニューの追加を行います。
ExpressionParametersにMMDMode
ExpressionMenuにMMD切り替えを追加します。
※メニュー追加の基本的な方法なので詳細は割愛しますが、下記図を参考にしたください。

ExpressionParametersとExpressionMenuの追加

最近のSDKアップデートにより、Syncedの項目が増えました。
外した状態を自分は動作確認してないので、上の図ではチェックを入れたままにしています。

これで、MMDで踊る際にメニューをONにすれば、FXレイヤーがOFFとなり、WeiteDefaut:OFFのStateがあっても、きちんと表情も連動するようになります。

【方法4(参考用)】ModularAvatarを使った方法

①~③で基本は良いですが、他の方法としてModularAvatar(以下、MA)を使って、着替えメニューだけを分離し、メインのアバターとMMD用のアバターで共通利用する、という方法もあります。

メリットとしては、WeiteDefautのON/OFFをそれぞれに合わせる事が出来る事、アバターを分けても使いたいメニューだけ共通化出来る事です。
デメリットとしては、MAの使い方やFXレイヤーやExpressionMenuの分割など、ある程度改変の知識が無いと少し難しい事です。

メインアバターが重い等、MMD用はアバターを分けておきたい、という人はこの方法が良いかと思います。

ModularAvatarについては、下記公式サイトを参考にしてください。
MMD対応にかぎらず、複数Avatarで共通のメニューを使う場合などに便利です。
https://modular-avatar.nadena.dev/ja/

3,MMDWorld別の対応(2023/4/27追記)

Worldによる差異について

1,2で紹介した方法で基本は問題無いのですが、確認していたところ、WorldによってFXレイヤーの無効化をするレイヤーが違う事がわかったため、対応を追記いたします。

①iY MMD World

おそらく利用されている方が一番多いと思われるWorldです。
こちらのWorldに関しては、World内の説明にある通り、FXレイヤーの2番目と3番目を無効化されます。
ただ、本記事はこのWorldを前提とした内容となっているため、特別な対応は不要です。

②MMD Dance World

個人的には結構気に入っており、使っている方も多いと思います。
問題は、このWorldの場合FXレイヤーの無効はおこなってくれず、ハンドサインによる表情変化のレイヤー有効のままであるため、ダンス中に表情が変わらなかったり、混ざってしまう事がわかりました。

また、このWorldはダンスが始まったタイミングで、各Trackingの処理が全てAnimationに変わるのではなく、「Eyes & Eyelids」と「Mouth & Jaw」は、変更されないようです。

この表情が混ざる問題は「2,FXレイヤー対応」で「【方法2】WriteDefautをすべてONにする」対応をおこなっている場合に発生します。
方法4については組み方によるので、これから説明する方法を見て判断してください。

尚、以下で紹介する対策案により対応出来る事は確認済ですが、自分はもともとWriteDefautをONする組み方をメインにはしていないため、アバターによっては上手く動作しない可能性がある事はご理解ください。

<対策案1>表情変化のレイヤーを無効するレイヤーを追加する

対象とするのは、表情変化のレイヤーがAnyStateから始まっているレイヤー構成の場合です。
具体的には以下のようなレイヤー構造の場合です。
大半のアバターはこうなっていると思われます。

AnyStateから遷移している

正直、AnyStateから始まっているこのレイヤーは遷移の優先度がつかないので、出来れば組み替えた方がよいのですが(次に紹介する対策案2参考)、慣れていないと難しいと思うので、ここは変えない方法での対策を記載します。

まず、このFXレイヤーに2つのパラメーターを追加します。
Parametersのタブに切り替えて、「InStation」と「MMDMode」を「Bool」で追加してください。
次にLayersのタブに切り替えて、「+」ボタンを押して、レイヤーを追加します。
レイヤー名は何でもいいですが、ここでは「MMDMode」レイヤーとしています。

右クリック>Create State>Emptyで3つ追加します。
それぞれ「Default」「MMD_Mode_ON」「MMD_Mode_OFF」としました。
名前は何でもOKです。

Entryから直接遷移する黄色のStateには、特に設定は不要ですが、右上のMotionが「Non (Motion)」の状態はあまり良くないで、空のAnimationを追加しておくと良いと思います。
大半のアバターには「Empty」のような空のAnimationが作られていると思うので、それをセットすればよいです。
なければ、Projectタブ内で右クリック>Create>Animation で作成してもよいです。(自分の場合は、NonAnimationというファイルを作ってます)

MMDModeレイヤー

「MMD_Mode_ON」には、設定が多いですが、以下の設定をしてください。
Add Behaviourから「VRC Animator Tracking Control」を追加し、全てAnimationにチェック
再度Add Behaviourを2回クリックして、「VRC Animator Layer Control」を2つ追加し、以下を設定します。
1つ目
Playable:FX
Layer:1
Goal Weight:0
2つ目
Playable:FX
Layer:2
Goal Weight:0

この2の設定で、FXレイヤー内の2番目と3番目のレイヤー(LeftHandとRightHandの表情変化)を無効化します。
レイヤーの指定を1と2にしているのは、「VRC Animator Layer Control」は、0番目から数えるためです。

「MMD_Mode_ON」の設定

続けて、「MMD_Mode_OFF」を設定します。
Add Behaviourから「VRC Animator Tracking Control」を追加し、全てTrackingにチェック
再度Add Behaviourを2回クリックして、「VRC Animator Layer Control」を2つ追加し、以下を設定します。
「MMD_Mode_ON」とは、Goal Weightの値が違うので注意です。
1つ目
Playable:FX
Layer:1
Goal Weight:1
2つ目
Playable:FX
Layer:2
Goal Weight:1

「MMD_Mode_OFF」の設定

各Stateの設定終わったので、次に各遷移条件を設定します。
「Default」を選択し、右クリック>Transitionsを選択し、「MMD_Mode_ON」へ繋いで下記設定をします。
Has Exit Time:外す
Fixed Duration:チェック入れる
Transition Duration(S):0

Conditionsの設定
InStation:true
MMDMode:true

「Default」→「MMD_Mode_ON」の設定

次に「MMD_Mode_ON」から「MMD_Mode_OFF」を繋ぎ、以下を設定します。
Has Exit Time:外す
Fixed Duration:チェック入れる
Transition Duration(S):0

Conditionsの設定
InStation:false
※MMDModeの条件を入れない理由は「2,FXレイヤー対応 の 【方法3】に記載した補足を参照

次に「MMD_Mode_OFF」から「Default」を繋ぎ、以下を設定します。
Has Exit Time:チェックは入れる
Exit Time:0.5
Fixed Duration:チェック入れる
Transition Duration(S):0
Conditionsの設定は不要

最後にMMDモードに切り替えをおこなう、Expressionメニューへの追加をおこないます。
設定方法は、「2,FXレイヤー対応【方法3】」の中に記載した「Expressionメニューの追加」を参照してください。。

====<補足>====
この対策の中で、「VRC Animator Tracking Control」により、AnimationとTrackingの切り替えをしていますが、VRCの問題なのか、レイヤーを無効化しているにもかかわらず、各表情変化のStateの中で、同じく「VRC Animator Tracking Control」を使っている場合は、そちらで上書きされます。

なので、メニューからDebugを出して見るとわかるのですが、一旦全部Animationになった後、ハンドサインを変えるとTrackingやAnimationにパラパラと切り替わります。
見てる限り、ダンスへの影響は無いように見えるのですが、できる限りMMD中はコントローラーに触らずにおく事をおすすめします。
============

<対策案2>表情変化のレイヤーにAnyStateからの遷移を追加する

表情変化のレイヤーで、AnyStateが使われていない場合は、こちらの設定の方が楽です。
レイヤー内にStateを2つ追加し、「MMD_Mode_ON」「MMD_Mode_OFF」(名前は任意でOK)とします。

「MMD_Mode_ON」には、以下の設定をしてください。
Add Behaviourから「VRC Animator Tracking Control」を追加し、全てAnimationにチェックします。

「MMD_Mode_ON」の設定

「MMD_Mode_OFF」には、以下の設定をしてください。
Add Behaviourから「VRC Animator Tracking Control」を追加し、全てTrackingにチェックします。

AnyStateから「MMD_Mode_ON」にTransitionを繋ぎ以下を設定
Has Exit Time:外す
Fixed Duration:チェック入れる
Transition Duration(S):0

Conditionsの設定
InStation:true
MMDMode:true

AnyStateから「MMD_Mode_ON」のTransitions設定

「MMD_Mode_ON」から「MMD_Mode_OFF」にTransitionを繋ぎ以下を設定
Has Exit Time:外す
Fixed Duration:チェック入れる
Transition Duration(S):0

Conditionsの設定
InStation:false

次に「MMD_Mode_OFF」からExitを繋ぎ、以下を設定します。
Has Exit Time:チェックは入れる
Exit Time:0.5
Fixed Duration:チェック入れる
Transition Duration(S):0
Conditionsの設定は不要

最後にMMDモードに切り替えをおこなう、Expressionメニューへの追加をおこないます。
設定方法は、「2,FXレイヤー対応【方法3】」の中に記載した「Expressionメニューの追加」を参照してください。

Sit時にアバタースケールが倍化してしまう問題について(2023/11/22 追記)

2023年11月17日にアップデートされたBuild 1376のタイミングで、MMDワールドや椅子などのSit時にアバタースケールが倍化してしまう問題が発生しました。
どうやら、GestureレイヤーとFXレイヤーの両方がWrite Defaults ONになっていると、この問題が発生するようです。
FXレイヤーについては、MMD対応の為にWrite Defaults ONにせざるを得ないかもしれませんが、Gestureレイヤー含め他のレイヤーについてはWrite Defaults ONにしておく必要は無いので、OFFにしておきましょう。

また、先述した「①iY MMD World」では、本件との関連は不明ですが、MMDWorld側の設定にある「AutoScale」がONになっていると、アバタースケールが変わってしまう問題が発生しています。
カメラ目線にアバタースケールが勝手に変更される為(?)と思われます。
こちらもアバターリセットしないと直らないため、カメラ位置が自動設定されませんが、OFFにしておくとよいです。

最後に

とりあえず、一通りのやり方や注意点を記載しました。
改めていいますが、やり方によっては意図しない動きになる可能性がありますので、必ずバックアップを取り、万全の状態で対応するようにお願いします。


この記事が気に入ったらサポートをしてみませんか?