【無料】[VRC]サブアバターギミック (20241017更新)
- VRCConstraint版(VRCSDK3.7.0以降用)0 JPY
- UnityConstraint版(VRCSDK3.6.1以下用)0 JPY
- 有料版(過去分のDLが可能です)100 JPY
自分の改変アバター同士でツーショットしたい。 そんな気持ちが生んだアバターギミックです。 ModularAvatarの機能を用いることで、更に導入が簡単になりました。 2022年4月に、掴んで固定できる揺れ物コンポーネント「PhysBone」がリリースされたため 固定後にPhysBoneで角度調整を行えるような構造も追加しました。 これにより、お人形さんのように自由なポーズをとらせて撮影することも可能になります。 (PCVRのみ) サブアバター側の表情を固定したい(がサブアバター側にFaceEmoのような表情固定の機能を導入していない)場合 拙作 "アバターの表情をRadialで設定可能にするMA用エディタ拡張" を予めサブアバター側に設定しておくことで サブアバターの表情を切り替え可能になります。 https://booth.pm/ja/items/5698501
注意とお願い
■PhysBoneのコンポーネント数の上限が合計256までに変更されました。 それを超過する場合、本ギミックは正常に動作しません。 (最新のVRC SDKではアップロード自体できないようです) ■複雑なギミックが搭載されているものや、 Modular Avatarによる改変を行ったアバターのサブアバター化についても動作保証外となります。 (ある程度までは動作を確認していますが、複雑な処理が含まれる場合は個別に作業が必要になるかと思います) ■NDMF版はビルド時にサブアバターギミックを設定するため アバター、サブアバターのTransformによっては破綻する可能性があります。 破綻が発生した場合、X(旧Twitter)またはメッセージより アバター、サブアバターに使用しているアバターに関する情報をお寄せください。 (確認できる範囲にはなりますが)こちらでも確認、対応を行いたいと思います。
サブアバターギミックとは
自身のアバターに向けてConstraintを設定することで 疑似的にもう1つのアバターを操作し、 また任意の位置で固定することができるようになります。 (サブアーム等のイメージでサブアバター、と呼称しています) 主に撮影等の利用を想定しています。 ※アバターの負荷が高くなりますので Publicな場所での使用はお控えください あくまで仮称のため、予告なく名称が変更されることがあります。
想定対象者
・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版)
[20241017] v1.2.6 サブアバターとメインアバターが同じ構成の場合、正常に動作しない場合があるので対応を追加。 [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追加