modular-avatar
modular-avatar copied to clipboard
きっかけ: https://misskey.niri.la/notes/9x4qba3biu とそのスレッド 私がこのissueを書いている時点のmainブランチで確認した感じでは、 https://github.com/bdunderscore/modular-avatar/blob/c7df409d7044da538f24a7fb134c9aeb01c518b3/Editor/EasySetupOutfit.cs#L451-L512 の部分の処理において、衣装にAnimatorがあってHumanoidならそこからHipsを取得、Animatorが無いかHumanoidでないなら名前からHipsを探す形になっていると思います。 ただ、その名前でのHips探索が、`Heuristic search - usually there'll be root -> Armature -> (single child) Hips.`のコメントの通りの範囲になっており、Armatureが2段になっているケースに対応出来ていないようです。 (リンク先のケースでは、`/Armature/Armature 1/Hips`。他にも何例かは存在しそうです。アバター側が2段になっているケースもあったので…) ## 環境情報 (上記のようにソースコードは現時点のものを確認しているので、多分1.10系でも起きると思います。) Unity: 2022.3.22f1 VRCSDK: 3.6.1 MA: 1.9.15...
Object Toggle のドキュメントには、応答タイミングの遅延について > 不幸な「事故」を避けるため とありますが、遅延なしに応答して事故になる状況がよく分かっていません…。(見えてはいけないものが見えてしまうことへの対策なのは何となく分かるのですが) よく分かっていないが故の考えかもしれませんが、遅延してほしくない場合のためにオプションで応答タイミングを切り替えられたらいいのかも?と思いました。 動画あります。 https://misskey.niri.la/notes/9wxqa6oaex
[logfile.txt](https://github.com/user-attachments/files/16577530/logfile.txt) https://anatawa12.github.io/ConsoleLogSaver/
Modular Avatar 1.9.13 体型調整のためにスケールと角度を調整したボーン(胸ボーン等)において、Playすると位置がずれる。 - 素体ボーン側 - スケール調整`(1.24, 1.08, 1.24)`がされている - Merge ArmatureまたはBone Proxyで結合する衣装側 - 素体とは異なるスケール`(1.26,1.11,1.24)`になっている - 素体と一致しない回転がある 少なくともこの場合、エディタ上とPlayで位置がずれて結合される。 逆算しがたいのでユーザー側では修正が困難です。
・対象アバターのRootにMA Mesh SettingsのComponentを追加しBoundsをSetしている ・対象アバターがUnityのScene上で原点に無い ・対象アバター内にScaleがマイナスのオブジェクトがある これらの条件を満たした時、アップロード時にそのScaleがマイナスのオブジェクトのBounding Boxが、Setした位置からズレた位置に生成されてしまいます。 具体的には、アバターをScene上のPosition(2, 2, 0)に配置し、なんらかのオブジェクトのScaleを(-1, 0, 0)としてアップロードした場合、そのオブジェクトのBounding Boxの位置だけが自分の視点から見て左斜め前2mほどにズレます。
I have some MA Blendshape Sync components that are loaded into my posing system. They sync correctly in edit mode, but break on build, whether in play mode via GestureManager...
... and toggle the collider instead
The "update when off screen" option in the skinnedmeshrenderer component computes the bounding box, without regard for the root bone or defined center and extent, by automatically drawing the rectangular...
現在のMA Bone Proxyの仕様では、Targetとなるボーンと同じTransformにする(at root)、またはワールド座標を基準として位置・回転を指定する(keep position and rotation)のいずれかの方法が指定できます。 しかしModular-Avatarを用いて、特定のアバターに依存しないギミックを作成する際、例えば手に何かを持たせたいケースなどにおいて、オブジェクトを持たせたいボーンがTargetボーンのTransform全く同じ位置ではなく、Targetボーンから多少ずれた位置に調整されるケースは多くあります。 現状だと上記ケースにおいてはAttachment Modeにkeep position and rotationを適用し、位置調整はユーザー側に任せる形式が一般的だと考えられますが、Prefabを入れるだけの改変しかしたことのないユーザーなど、この方法が難しいケースは安易に想定され、また、位置調整を行うオブジェクトが増えた場合などにおいては導入手順が煩雑化してしまいます。 そのため、MA Bone proxyに指定のTargetボーンからの相対位置を記録し、異なるボーン構造・スケールのアバターに導入した場合でも、ある程度Targetボーンからの距離が一致するようなオプションを実装してほしいです。