상품 설명
自分の改変アバター同士でツーショットしたい。
そんな気持ちが生んだ、サブアバターの呼び出し・ポーズ調整用アバターギミックです。
ModularAvatarのNDMF機能を用いることで、更に導入が簡単になりました。
任意のアニメーション再生の他、固定後にPhysBoneでポーズ調整を行えるため、自由なポーズをとらせて撮影することも可能になります。
(PCVRのみ)
このギミックでできること
■アバターギミックとして、別のアバターを召喚
(複数導入することで、複数のアバター召喚も可能)
https://x.com/hrmk_lily/status/1825689836860354838
※自分を固定する場合は予めCloneしたものをサブアバターにしてください
■召喚したアバターの姿勢を自分のアバターと連動・固定
■召喚したアバターを固定後PBで姿勢調整(PCVRのみ・3点可)
※PhysBone消費の目安として1人当たり
固定のみ:0
PhysBoneでの操作有(指を除く):18~34
PhysBoneでの操作有(指を含む):48~64
PhysBoneの数は範囲内で細かく設定可能です。
■召喚したアバターのサイズを変更
■召喚したアバターに、事前登録したモーションアニメーションを再生させる
アップロードできない場合の確認事項
■VRChatのPhysBoneコンポーネント数の上限が合計256までとなっており、(ギミック分・サブアバター分を含めて)超過する場合はアップロード自体できない仕様になっています。
アバターによっては、PhysBoneの統合や削除が必要になるかもしれません。
■VRChatのアバター容量制限でアップロードできない場合、ローカルビルド(SDKの Build Type を [Build & Test Your Avatar] に変更)であれば使用可能なケースがあります。
その場合はアバターのOther欄から使用することになる点と、他のユーザーからは見えない点に注意してください。
※ここではアバター容量の削減について詳しく扱いませんが、テクスチャサイズなどが特に影響しやすいです
■Expression Parametersの同期パラメータが(ギミック分・サブアバター分を含めて)256bitを超える場合も、アップロードできない仕様になっています。
この場合は、サブアバターギミックの [パラメータを同期しない] にチェックを入れることでアップロード可能になる場合があります。
ただしギミックの動作が他のユーザーからは見えなくなる点にご注意ください。
※このチェックを入れる場合は上記同様ローカルビルド推奨です
■構造を組み替える都合上、他のModularAvatar系のギミックとは相性が悪いことがあります。
上記でも解決しない場合、
①メインアバターからサブアバターギミックを抜いてアップロードできることを確認
②サブアバター単体でアップロードできることを確認
③メインアバターに "サブアバターギミックだけ" を入れて、アップロードできることを確認
④③で外したギミックを一つずつ戻しながらアップロードできることを確認
という手順でアップロード確認をすることで、相性の悪いギミックが見つかる可能性があります。
※もし③の状態でもエラーが発生する場合、お気軽にご相談ください。
■もしもサブアバター側に入れているMAギミックが競合している場合は、サブアバターをManual Bakeしてから、改めてサブアバター化すると上手くいくこともあります。
その他の注意とお願い
■複数のアバターを1アバター内に内包するという構造上、非常に重たいアバターギミックとなっています。
publicな場での利用は極力お控えください。
(普段使いとは別の、撮影用アバターとしてアップロードすることを推奨します)
■他の人もいる場でアバターを固定する際は
・Tracking→Dropの順に操作すること
・Tracking、Dropの時間をそれぞれ1秒ほど確保し、身体を動かさないようにすること
以上の2点に気を付けてください。
そうでないと、他の方との同期が間に合わずに正しく表示されません。
また、固定後にJoinしたユーザーには正しく表示されません。
(主に一人遊びを目的としたギミックなので、改善予定はありません)
■NDMF版はビルド時にサブアバターギミックを設定するため
アバター、サブアバターのTransformによっては破綻する可能性があります。
破綻が発生した場合、X(旧Twitter)またはメッセージより
アバター、サブアバターに使用しているアバターに関する情報をお寄せください。
(確認できる範囲にはなりますが)こちらでも確認、対応を行いたいと思います。
手や指の微調整について
PhysBoneコンポーネント数や、距離が短いことによって上手く掴めない問題から、デフォルトで手や指の調整は「Rotation Constraintを部分的にオンにする」ことで実現しています。
(ExMenuの [LeftHandTracking] や [RightHandTracking] 内の項目がそれ)
※v1.3.0以降は「Finger ボーンの操作機構を追加する」オプションをオンにすることで指にPBを追加することも可能です。
そのため、固定したサブアバターの Hand とメインアバターの Hand の向きが異なると破綻する仕様です。
※向かい合わせではなく、サブアバターにメインアバターを重ねるようなイメージで操作する必要があります
また、手指の調整中にサブアバターギミックのPBを掴んでしまう場合は
サブアバターギミックのオプション「ギミックPhysBoneの掴み無効化アニメーションを追加する」をオンにした状態でアップロードし
ExMenuの SubAvatarControl > PB操作メニュー > ギミックPB掴みOFF
を一時的にオンにすることで、PBを掴んでしまわないようにすることができます。
※VRChatのSettings > Avatar Interactions > Avatar Self Interactを一時的にオフにしても同様のことが可能かと思われます。
(日本語表記の場合は 設定 > アバター > アバターインタラクション > 自分のアバターへのインタラクト)
ちょっとしたTipsとして、メインアバター側GestureレイヤーのFistへWeightに応じてパーからグーへ遷移するアニメーションを設定しておくと
トラッキングモードを指一本ずつにした際、ハンドポーズの自由度が上がるかと思います。
こんな機能が欲しい!
■メインアバターも固定したい!
→コンセプト的に再実装の予定は無いです。
複数アバターの固定であれば、軽量なメインアバターに
サブアバターギミック自体を複数導入することで可能です。
※PB数に注意
■ポーズ再生からの、PhysBoneによるポーズ調整がしたい!
→メインアバター側にポーズ再生ギミックを搭載し
ポーズ再生→サブアバターを固定、という手順を踏むことで
疑似的にですが実現可能です。
■サブアバター側の表情を固定したい!
→サブアバターに元々表情固定の機能が付いている場合は、
[サブアバター用のFXLayerをマージ] にチェック
そうでない場合は、サブアバター側にFaceEmoのような表情固定の機能を導入しておくことで、サブアバターの表情を切り替え可能になります。
■サブアバターの視線制御を行いたい!
→サブアバターに元々表情固定の機能が付いている場合は、
[サブアバター用のFXLayerをマージ] にチェック
そうでない場合は、サブアバター側に下記の視線操作ギミック導入を検討してください。
https://hrmk-soft.booth.pm/items/6045128
■別プロジェクトのアバターをサブアバターにしたい……。
→流石にそのままでは難しいです。
ただ、例えば TexTransTool で全マテリアルをアトラス化する状態でMAのManual Bakeすると、身体のFBX(中のavatarが必要)と、MAで生成されたファイル群(フォルダごと)でアバターがほとんど完結するようになります。
そのため、サブアバター化したい子の方のプロジェクトで上記対応を行ってからprefab化してエクスポート→メインアバター側のプロジェクトにインポートすると最小限のデータを持ち込めるんじゃないかな、と思います。
(エクスポート前に、Assets/ZZZ_GeneratedAssets フォルダから Bakeしたファイル群を外に出しておくとうっかり消えたりが防げるかも)
■沢山のアバターを出したいけど、PB数が辛い……。
シンプルな構造のアバターであれば「操作ギミック有のサブアバターに、操作ギミック無のサブアバターを沢山紐付ける」みたいな方法で上手くいったりする場合があります。
そうすれば、操作ギミック一式分で無限にサブアバターを固定できます(アバターサイズに引っかかることが多いですが)。
イメージとしては以下の投稿をご確認ください。
https://x.com/hrmk_lily/status/1909152020381991394
■上記以外のこんなものが……。
Boothのメッセージ、X(旧Twitter)からご相談ください。
私が面白いと思ったら、実装される……かもしれない?
想定対象者
・VRChatをPCからVRで利用している方(Quest、デスクトップモード非対応です)
・Unityを用いて、VRCアバターの改変がある程度可能な方
・ModularAvatarをご利用の方
・VRC SDK 3.7.0以降をご利用の方
(VRCConstraint版でなければ少し古くても動作するかも)
内容物
・サブアバターギミック制作支援ツール
インポートすることでUnityの右クリックメニュー内に
[HrmkSoft] > [SubAvatarSetting]が表示されます
※商品画像・映像中のアバターは同梱されません。
商品画像・映像中のアバターは以下をお借りしています。
【PC/Quest対応】VR用3dモデル「2A-7-4 / VRCXset シヴィー/ヨツル/フォーシー/クールク」
https://hiroiheya.booth.pm/items/2019040 (拾い部屋様)
禁止事項
・本エディタ拡張自身やそれを改変、流用したものの再配布
→ こちらのギミックを設定したアバターのPublic可は可能です。
ただし、ギミック以外に他権利者がいるアバターを使用している場合は、そちらの権利を優先してください。
・製作者を偽る行為
・その他、わるいこと全般
更新履歴(NDMF版)
[20260518] v1.4.4
一部の床コライダーを「サブアバターを固定した時点のアバター直下」で固定するように変更
[20260109] v1.4.3
サブアバターの衣装に、Constraint先がnullとなっているものがある場合用に
PositionConstraintとParentConstraintを上書きor該当のソースのみ削除する機能を試験的に追加
[20251111] v1.4.2
サブアバターのモーション再生機能で
AnimationClip の Mirror 設定を反映できるような処理を追加
[20250829] v1.4.1
Sceneに無いPrefabをサブアバターにした場合
処理後に Prefab の Clone が Scene に残されてしまう問題を修正
[20250818] v1.4.0
ModularAvatarの更新で、サブアバター側のMA BoneProxyの紐付き修正が正しく行われていなかった問題を修正
[20250817] v1.3.9
サブアバター側のMA BlendShapeSyncで
同期元のメッシュが未指定のバインドがある場合にエラーが起きる問題を修正
[20250808] v1.3.8
モーション再生時、表情などのFXLayer相当のアニメーションも持ち込める機能を試験的に追加。
サブアバターギミックのアニメーション優先度を255まで上昇。
(Assets/HrmkSoft/Input/Prefab/SubAvatarExMenu.prefabのレイヤー統合優先度を0にすれば元に戻せます)
[20250528] v1.3.7
Grab判定を広げた時、根本は判定外にすることでHipsの判定が持ちにくくならないように修正(あんまり差がわからないかも)。
マーカーをSkinnedMeshRendererを1つに統合オプションをデフォルトオフに変更。
(僅かな軽量化より、重なった時の描画不安定の方が気になるとのことなので)
[20250528] v1.3.6
Grab判定を広げた時、Hipsの(サブアバター持ち運び用の)判定が移動元ー移動先間全てになってしまうため
Hipsの判定だけは広がらないように修正。
[20250525] v1.3.5
AvatarMenuCreator に仮対応。
[20250522] v1.3.4
操作ギミックの判定を少し広げるオプションを追加。
[20250518] v1.3.3
サブアバターのHipsに、Hipsより下のオブジェクトを参照するコンポーネントがアタッチされていた場合の挙動が異なる問題の修正。
(方式を変えてるので v1.3.2 も暫く公開しておきます)
[20250503] v1.3.2
MA MergeAnimator のパスモードが "絶対的" のオブジェクトが
サブアバター直下以外にあった場合に正常動作していなかった問題を修正。
(一部MAギミックへの対応性が上がったかと思います)
※UnityConstraint版に取り込んだものは v1.2.1.004として追加
[20250501] v1.3.1
エディターにHumanoid ボーンの簡易チェック機能を追加。
(EditorOnlyだったり衣装側が優先になってると警告が出ます)
PhysBone階層をConstraintで整理する時用に、PhysBoneの設定順序を変更
サブアバター側のEditorOnlyタグを処理前に削除するように変更
※UnityConstraint版に取り込んだものは v1.2.1.004として追加
[20250419] v1.3.0
指のPhysBoneをオンにするオプションを追加(PB数が30も増加する点と、判定のCubeなどは表示されない点に注意)。
HandTrackingモードで、手そのものも追従対象に修正。
アニメーションをD&Dで追加できるように。
※UnityConstraint版に取り込んだものは v1.2.1.004として追加
[20250328] v1.2.9
PBの深度を浅くできるよう、Constraintで階層の入れ替えを行うオプションを追加。
合わせて初期値を変更。
※UnityConstraint版に取り込んだものは v1.2.1.004として追加
[20250328] v1.2.8
VRChatのアップデートに合わせ、PBの深度が8で収まるように初期値変更+エラーメッセージを追加
サブアバターのアニメーション再生について、ルート座標の対応性を向上
※UnityConstraint版に取り込んだものは v1.2.1.004として追加
[20250127] v1.2.7
サブアバター側にFaceEmoが存在する場合、ModularAvatarによる警告が出ていたので出ないように修正
※UnityConstraint版に取り込んだものは v1.2.1.003として追加
[20241017] v1.2.6
サブアバターとメインアバターが同じ構成の場合、正常に動作しない場合があるので対応を追加。
※UnityConstraint版に取り込んだものは v1.2.1.002として追加
[20241016] v1.2.5
サブアバターとメインアバターの座標差分を保持するオプションを追加。
(Tracking時に、メインアバターの前/後ろで追従させたい時用)
※少し組み換えをしたので不安定かもしれません
[20240920] v1.2.4
VRC ConstraintのPosition Offset計算がおかしくなっていたのを修正
[20240909] v1.2.3
MAのMeshSettingsの情報復元時にDictionaryのKeyチェックをするように修正
(設定モード継承で情報が存在しない場合への対策)
※UnityConstraint版に取り込んだものは v1.2.1.001として追加
[20240907] v1.2.2
VRCConstraint版を追加
マージするFXLayerにAvatarMaskが存在すると注意を表示するように変更
[20240828] v1.2.1
PhysBoneパラメータを調整しガタつきを改善
[20240601] v1.2.0
メインアバターのHipsのグローバル座標についてY以外が0でない時
ワールドによってはメインアバターとサブアバターの表示位置にズレが生まれる問題についての仮対応
[20240531] v1.1.9
Unity2019でまた動かなくなっていたようなので仮修正
[20240531] v1.1.8
一部のModular Avatar系ツールに仮対応
・FaceEmo(メインアバターと操作が連動しないように)
・Light Limit Changer(メインアバター直下で1つだけに)
・AAO: AvatarOptimizer(サブアバターのAAO Trace And Optimizeを除去)
※名称で対象を絞っているため、書き換えている場合は対応処理が行われません
[20240528] v1.1.7
メインアバターの名称を、サブアバターとして参照するオブジェクトの名称で上書きする機能を追加
※主に参照先のPrefabを切り替えながらローカルビルドを繰り返すユーザー向けです
[20240522] v1.1.6
サブアバター側の情報で視点を上書きするModuleにIPD調整可能なバージョンを追加
(基本ツール自体に更新はありません)
[20240521] v1.1.5
サブアバター側の情報で視点を上書きするModuleを追加
(基本ツール自体に更新はありません)
[20240518] v1.1.4
サブアバターの名称を任意に指定できる機能を追加
[20240517] v1.1.3
サブアバター側にModularAvatar MergeAnimatorで絶対パス参照になっているものがあった場合
サブアバター基準の相対パス参照に置換する対応を追加
[20240514] v1.1.2
PhysBoneで移動させた後にスケール調整を行っても場所が飛ばないよう構成を変更
モーション再生用の変換時、キーフレームのtimeの僅かな差を無視する機能を追加
[20240509] v1.1.1
モーション再生に速度を可変にする機能を追加
Disable, Tracking, Dropの際にモーション再生をオフに、モーション再生時にTracking Controlの変数をリセットするように変更
[20240508] v1.1.0
サブアバターにモーション再生を可能にする機能を追加
サブアバターのスケール変更を可能にする機能を追加
Unity2019でPB設定を変更するアニメーションが正常動作しない問題を修正
[20240504] v1.0.9
Unity2019で動作しない問題を修正
メイン・サブアバターの設定時に Humanoid でないものは通知を出すように変更
[20240422] v1.0.8
サブアバターのAnchorOverrideが骨に紐付かない場合
サブアバターのHipsにPositionConstraintを張るように変更
[20240420] v1.0.7
PhysBoneによる操作機構について、ShoulderとToeをオンオフする機能を追加
[20240419] v1.0.6
ギミック用のマーカー類をSkinnedMesh1つにする機能を追加
捻り機構について、個別にオンオフする機能を追加
[20240417] v1.0.5
メインアバターの WriteDefaults がオフであり
サブアバター側に motion が none な state があれば注意が表示されるように変更
[20240417] v1.0.4
サブアバターサイズに合わせてマーカーの大きさが変動する機能の修正
[20240416] v1.0.3
サブアバターのアーマチュア(やModularAvatarの置換・結合系コンポーネント)配下にある場合
Skinned Mesh Renderer の RootBone が null でも上書きしないように変更
(ウェイトの乗っていないSkinned Mesh Rendererの表示位置が崩れる問題への対応)
[20240416] v1.0.2
広めのワールドだとHipsキューブがガタガタするのを多少軽減
各PhysBoneのradiusを縮小。
(どちらも機能としてはほとんど差が無いと思います)
[20240415] v1.0.1
自己参照(メインアバターをサブアバター化しようとする)を明示的にエラーとするように修正
階層構造や複数サブアバター時に正常な処理が行われなかった問題を改善
全身の旋回、傾き用のSphereがメインアバターのArmatureではなくHipsに連動するよう変更し、一部アバターが想定外の旋回、傾きを行ってしまう問題を修正
ConstraintのLockをオンにし、Manual bake avatar時とビルド時で近い状態が得られるように変更
[20240414] v1.0.0
NDMF版をメインに変更
更新履歴(過去分:MA対応版)
[20240606] test22
最新版のNDMF版で上書きした場合、正常に動作しなくなる問題の修正
※こちらを入れた場合、更にNDMF版で上書きし直す必要があります
[20240403] test21
オマケ(NDMF版)で骨に紐付かないCloth用Colliderにも仮対応
[20240403] test20
オマケ(NDMF版)でAnchorOverride, RootBoneの未指定、骨に紐付かないPBCに仮対応
[20240402] test19
オマケ(NDMF版)で手指の操作モードが不安定だったのを微修正
サブアバター以下のパラメータを同期しないオプションを追加
[20240402] test18
オマケ(NDMF版)でプレハブ化されたアバターに仮対応
ExMenu構造の整理
[20240401] test17
捻りオフが動作していなかった問題を修正
NDMFでサブアバターを構築するオマケ追加
[20240315] test16
サブアバターの傾きを操作するスフィアを、前後/左右で分割
旋回を操作するスフィアを赤色に変更
[20240311] test15
ModularAvatarの更新に合わせ、サブアバターのMA Merge AnimatorにRelative Path Rootが設定されている場合に対応
[20240310] test14
サブアバター用の表情アニメーションをFXLayerに設定する機能が動作しなくなっていたものを修正
[20240307] test13
ワールド固定をMA標準のものへ変更する機能を追加
MA Merge Animatorで "Match Avatar Write Defaults" をオンにするよう変更
FXLayerのMAでのマージ時にパラメータ設定が誤っていたのを修正
FXLayerのMAでのマージ時にAnimator Onlyなパラメータも設定するように変更
[20240302] test12
MA化する際、サブアバターのParentConstraintを一時的に無効化する機能を仮追加(無効化している間、サブアバターの自身のカクつきが軽減される)
サブアバターのPBコンポーネントを一時的に無効化する機能を仮追加(これをオンにした場合、Limit無効化をした場合に一度オフ→オンにする必要有)
サブアバターのマーカースケールを、Headのワールド座標から算出してサイズ調整をするように変更
サブアバターのHipsの持ち運び用PhysBoneのStretchをInfinityに変更
サブアバターの旋回用PhysBoneのHinge角度を、HipsのワールドRotationを打ち消すように変更
サブアバターの旋回・傾き用PhysBoneの位置を、Hips-Neckの差異を基準にするように変更
[20240216] test11
MA化する際、サブアバターのFXLayerをMAでマージする機能を仮追加
[20231225] test10
MA化する際パラメータに不要な値が残っていたのを除去。PBを設定しないモードを仮追加
[20231222] test9
MA化したサブアバターも、ビルド時に自動で紐付け再設定を行うように変更
[20231221] test8
VRCSDK3.5.0で、掴み無効化アニメーションを作成すると正常動作しない問題に一時対応
[20231219] test7
MA化したサブアバターのギミック対応用ツールを追加
[20231218] test6
サブアバター側のAvatarDescriptorを残すオプションを優先に変更
[20231218] test5
従来版で、サブアバター側がModularAvatar改変されている場合に仮対応
[20231217] test4
サブアバター側のAvatarDescriptorを残すかどうかを選択式に変更
[20231217] test3
ギミックを含まないMA改変(MA Merge Armatureのみ)であれば一部動くように仮対応
[20231205] test2
FXLayerの転送機能を改善
[20231204] test
テスト版公開
更新履歴(過去分:Ex版)
[20230724] v0.15
FXLayerの転送に全選択、サブアバターのPB Limit/Collider無効化機能を追加しました。
[20230428] v0.14b
手指の追従モードのアニメーションが正常に作成されない問題を修正しました。
[20230412] v0.14
サブアバター化の際、Prefabを破壊しないように変更しました。元がprefab(variant含む)の場合はvariant化されます。
[20230402] v0.13
FXLayerの転送時、誤動作の元となるためパラメータ重複を基本的に受け付けないようにしました。
CombinedAnimationClipの変換に対応しました。
[20230401] v0.12
VRCSDKの更新に対応しました。
[20230329] v0.11
Grab判定の大きさを調整可能にしました。
[20230329] v0.10beta2
サブアバター側の既存PBを一時的にGrabできなくするオプションを追加しました。
このオプションは「1オブジェクトに1PhysBoneしか存在しない」「アニメーションでGrabの管理を行っていない」場合のみ正常に動作します。
[20230329] v0.10beta
旋回させる用、全体を傾ける用のSphereがサブアバター側の旋回に連動するようにしました。
また、当ギミックで設定されるPBを一時的にGrabできなくするオプションを追加しました。
FXLayerの転送機能の改善を行いました。処理速度を改善しました。
[20230321] v0.09
頭(Head)、足・つま先(Foot・Toe)などの末端部にも操作可能なPBを追加しました。
また、FXLayerの転送機能の改善を行いました。
[20230319] v0.08
腰・胴を捻るためのHingeを追加。Hingeの数が増えたため、Hips-Neckのラインは青、それ以外を緑に設定しました。
また、逆にHingeを設定しないオプションを追加しました。
[20230317] v0.07
旋回させる用のHingeを追加。マーカー非表示用のアニメーションをTrackingMenuの下へ移動。
PBオフのアニメーション起動用メニューを削除(必要であれば手動で追加してください)。
[20230316] v0.06
当たり判定周りを大幅に変更。Grabできる近辺にマーカーを表示するように。
サブアバター側のFxLayerを転送する機能を試験的に追加。同名称のパラメータが存在する場合、ExMenu側を手動で調整する必要有。
[20230110] v0.05
Controller, ExMenu, ExParameter 未指定時、Package側も参照するように変更。
Hinge部分の計算バグを修正。PBオフにするアニメーションも追加。
[20220704] v0.04
FxLayer, GestureLayer, ExpressionsMenu, EspressionParametersが未指定の場合、可能ならVRCSDK配下のものを使用するように変更。
サブアバターを非表示(Disabled)から固定(Drop)や手追従(HandTracking)にしても原点Tポーズにならないよう変更。
[20220704] v0.03
アバターのRotationが異なるとTrackingが破綻する問題を修正。
[20220703] v0.02
サブアバター側にVRC Avatar Descriptorが無いとエラーになる問題を修正。
[20220626] v0.01
Ex版 初回公開。
※これ以前は記録無し
初期のツールは20201204公開
PBによる操作機構は20220428追加
모든 리뷰
더보기리뷰 등록
리뷰를 작성하려면 로그인이 필요합니다.
로그인하고 리뷰 쓰기