🎯 結論:“必ず Join して 1 メッシュにする” が正しい
曖昧さを排除すると、こうなる。
- Roblox側でスキニング(頂点をボーンで動かす)を行う場合
- メッシュは 1 つであるべき
- Join は必須であり、任意ではない
つまり「必要なら」ではなく “必ず”。
🧩 なぜ 1 メッシュにすべきなのか(構造的理由)
✔ Roblox のスキニングは「1メッシュ=1スキンバインド」が基本
Roblox の SkinnedMesh は:
- 1つのメッシュ
- 1つのボーン階層
- そのメッシュの頂点に対するウェイト
という構造で動く。
複数メッシュを別々に持ち込むと:
- メッシュごとに別のスキンバインドが必要
- ボーン階層を複製する必要が出る
- 動きが破綻する
- 人形劇の「一体の人形」という構造が壊れる
つまり Roblox のスキニング構造と矛盾する。
✔ 「頭・首・胴体・腕・脚」を分割したまま持ち込むと破綻する
分割したままFBXにすると:
- HeadMesh
- TorsoMesh
- ArmMesh
- LegMesh
など複数の SkinnedMesh が生成される。
Roblox側でスキニングする場合:
- 各メッシュに対して別々にウェイトを設定
- 各メッシュに対してボーンをバインド
- 位置合わせが必要
- 原点もバラバラ
- 人形としての一体性が失われる
「人形劇」という構造と完全に逆行する。
✔ Join は「形状の統合」であり、リグとは別レイヤー
Join は:
- メッシュを1つにまとめる
- ボーン構造には影響しない
- スキニングの前段階として必須の“形状の正規 化”
つまり:
Join は形状のレイヤー
リグとスキニングは動きのレイヤー
レイヤーが違うので、Joinしてもリグの自由度は失われない。
🔥 パイプラインに最適化した最終ルール
Blenderでは:
- Apply Scale
- Apply Rotation
- Origin to Geometry
- 必ず Join して 1 メッシュにする
- FBX で出力(形状のみ)
Robloxでは:
- ボーンを配置(人形劇用の骨格)
- メッシュをスキニング(Roblox側で頂点の所属を設定)
- アニメーションや操作ロジックを構築
この分業がもっとも美しい。
🌱 まとめ(曖昧さゼロの形)
- 用途(Roblox側でスキニングして人形劇を行う)では
Join は必須であり、任意ではない。 - メッシュは 必ず 1 つに統合する。
- スキニングは Roblox側で行うので、Blender側のウェイトは不要。