【Unity】Avatar Visual Baker(メッシュとボーンの焼き付け)
- Digital100 JPY




再生中(Play Mode)のアバターの「今の見た目」を、そのままメッシュとボーン構造として焼き固めて抽出するツールです。 「ちび化ツール」などで変形させたアバターをFBX化しようとして、ボーンの位置がずれたり、スケールがおかしくなったり、メッシュが崩壊した経験はありませんか? 本ツールは、アニメーションやギミックによって変形している状態の頂点座標とボーン位置を厳密に計算し、スケール(1,1,1)のきれいな状態でPrefab化します。 作成コンセプトとしてはロリ化アバターをFBXで抽出し、blenderでの衣装合わせやウェイトの転送をしやすくするために作りました。
※開発環境について
オリジナル3Dアバター『ルミナ - LUMINA』💎 https://extension.booth.pm/items/7502898 SchoolgirlAvatars Vol.20 『ルミナ』 https://seikido.booth.pm/items/7801133 で開発しています。 上記アバター及びボーンのPreset変形、または一般的なHumanoidアバターであれば問題なく動作することを確認しております。 ※極めて特殊なボーン構造を持つアバターや、特殊なシェーダー・スクリプトでメッシュを描画しているアバター等では、予期せぬ挙動となる可能性があります。あらかじめご了承ください。 AIを使って開発してます。
■ どんな時に使える?
ちびキャラ化の保存: スケール変更ギミック等で小さくしたアバターを、そのままの見た目で固定して改変用に使いたいとき。 衣装合わせの簡略化: コンポーネントを復元する能力があれば、マージアーマチュアである程度そろえた衣装をFBX化し、blenderでいじることが できます。 ちびキャラ対応の簡略化:ちびアバターをFBX化できるので、blender上で比較しながらリアルタイムで衣装の微調整をしたり、ウェイト転送を簡単にできます。 特定のポーズのフィギュア化: アニメーション再生中の一瞬のポーズを固定し、静止画撮影用のプロップやフィギュアとして出力したいとき。 衣装の変形適用: 胸シェイプキーや調整ボーンで変形させた状態の衣装を、新しいデフォルト形状として確定させたいとき。
■ 特徴
見た目重視のベイク: SkinnedMeshRendererのBakeMesh機能を使用し、ブレンドシェイプやアニメーションによる変形をすべてメッシュ形状として確定させます。 ボーン構造の再構築: 複雑にスケール値が入ったボーン構造を、ワールド座標を維持したままScale(1,1,1)のクリーンな構造に再計算して複製します。 Unityだけで完結: Blender等の外部ソフト不要で、PlayMode中にボタン一つでPrefab化まで行います。
■ 使い方(FBXファイルにするまで)
本ツールはUnityの標準機能を使ってPrefabを生成します。これをFBXファイルとしてPCに保存するには、Unity公式の無料プラグイン「FBX Exporter」を使用することを想定して作っています。 手順①:FBX Exporterの導入(初回のみ) Unityの上部メニューから Window > Package Manager を開きます。 左上のドロップダウンを Packages: Unity Registry に変更します。 右上の検索バーに FBX と入力します。 リストに出てくる 「FBX Exporter」 を選択し、右下の Install をクリックします。 手順②:アバターのベイク(本ツールの使用) Unityの再生ボタン(▶)を押し、Play Mode(再生中) にします。 アバターをちび化させたり、保存したいポーズに変形させます。 ※この時、Scene画面で見えている「そのままの形」が保存されます。 Hierarchyで対象のアバターを選択状態にします。 上部メニュー Tools > Avatar Visual Baker > Bake Current Pose をクリックします。 処理が終わったら再生を停止します。 Assets/AvatarVisualBaker_Output フォルダ内に、ベイクされたPrefabが生成されています。 手順③:FBXとして書き出し 生成されたPrefab(青い四角いアイコン)を右クリックします。 メニューから Export To FBX... を選択します。 設定ウィンドウが出ますが、 [Export Format]の項目を[Binary]にし、あとは基本的にはそのまま Export をクリックすれば完了です。 ※これでBlender等の外部ソフトで編集可能な3Dモデルデータになります。
■ 仕様・注意事項
出力されたPrefabは、UnityのFBX Exporter等を使用することでFBX形式として書き出すことが可能です。 Constraint等のギミックで動いているパーツも、その瞬間の位置で固定されます。 PhysBones/DynamicBone等の揺れものも、その瞬間の変形で固定されます。 一時停止機能を使うと狙いやすいです FBX Exporterの仕様上、blenderにインポートしたときにメッシュが90度ずれるモデルが多々あります。 メッシュを選択してx軸に90度傾ければ大丈夫です。 FBX Exporterの仕様上、コライダーもEmptyオブジェクト出力します。blenderにインポートしたあと削除して大丈夫です。
■出来ること出来ないこと
Q. アバター以外にも使えますか? A. はい、アバターに限らず**「ボーンが入って動く3Dモデル(SkinnedMeshRenderer)」**であれば、モンスターや揺れもの付きの衣装単体などにも使用可能です。 ただし、背景の建物や小物など、ボーンが入っていない静的なメッシュ(MeshRenderer)には対応していません。 Q. 髪の毛やアクセサリーなど、パーツ単体でも使えますか? A. はい、可能です。そのパーツを選択して実行すると、「そのパーツのメッシュ」と「位置を特定するための全身のボーン構造」がセットで出力されます。 逆に、全てのボーンが出力されるとも言えますが、不要なものは消して大丈夫です。 「衣装の1パーツだけ欲しい」といった場合にも便利です。
■ 動作を確かめてないAIによるこんな使い方も!アイデア集
1. ワールド設置用の「石像」や「モブ」を作る VRChatなどのワールド制作において、アバターを配置したい場合にAnimatorやボーンが入ったままだと重くなります。 このツールでポーズを固定して書き出せば、**「ただの軽いメッシュ(置物)」**として扱えるため、軽量な背景キャラや銅像オブジェクトを簡単に量産できます。 2. 3Dプリント・フィギュア化の素体作成 3Dプリンターで出力するには、Tポーズではなく「かっこいいポーズ」で固める必要があります。 Unity上でPhysics BoneやWind Zoneを使って髪やスカートをなびかせ、一番いい瞬間にPauseしてこのツールを実行すれば、重力や風の影響を受けた自然な造形のメッシュが一発で手に入ります。 3. イラスト作成の3D資料(デッサン人形) Clip Studio Paintなどの3Dレイヤーに読み込むための素材作りにも最適です。 使い慣れたUnityの操作でポーズを付け、パースの効いた画角でベイクしてFBX化。それをペイントソフトに読み込めば、自キャラ専用の最強の作画資料になります。 4. 物理演算クロスの「形状固定」 UnityのClothコンポーネントなどでシミュレーションした「布のしわ」や「垂れ具合」を、静的なメッシュとして保存できます。 「ベッドに放り投げた服」や「風にはためく旗」など、手作業でモデリングすると大変な有機的な形状を、物理演算の結果からキャプチャしてアセット化できます。 5. 複雑なボーン構造の「洗浄(クリーニング)」 アバターの改変を繰り返して、「回転やスケールの値が汚くなりすぎて、Blenderに持っていくと爆発する」という状態になったことはありませんか? このツールは強制的に全ボーンのスケールを(1,1,1)にリセットして構造を再構築するため、データ構造をきれいにするクリーンアップツールとしても機能します。




