メインコンテンツまでスキップ

高度な機能

このページでは、もちもちほっぺツールの高度な機能について説明します。

表情連動​

もちもちされたときや引っ張られたときに、表情などのBlendShapeを変更できます。

Contact時の表情設定​

Contact Receiver設定の「追加で変更するBlendShape(表情など)」セクションで設定できます。

設定方法​

  1. 「+」ボタンをクリックして新しいBlendShapeを追加
  2. 項目を展開
  3. Target Mesh: 表情のあるSkinnedMeshRendererを選択
  4. BlendShape Name: ドロップダウンから変更したいBlendShapeを選択
    • Target Meshを設定すると、そのメッシュのBlendShape一覧が表示されます
  5. Value: BlendShapeの値(0-100)を設定

使用例​

  • もちもちされたときに「Smile」を50%適用
  • もちもちされたときに「Blush」を100%適用
  • 複数のBlendShapeを組み合わせて表情を作成

PhysBone時の表情設定​

PhysBone設定の「追加で変更するBlendShape(表情など)」セクションで設定できます。

設定方法はContact時と同じです。

使用例​

  • 引っ張られたときに「Surprised」を80%適用
  • 引っ張られたときに目を開く表情を適用

複数のBlendShapeを設定​

Contact時とPhysBone時で異なる表情を設定できるため、以下のような表現が可能です:

  • もちもちされたとき: 笑顔
  • 引っ張られたとき: 驚き顔

それぞれ複数のBlendShapeを組み合わせることで、より豊かな表情を作れます。

ヒント

表情のBlendShapeは、ほっぺの変形とは別のメッシュでも設定できます。 例えば、Bodyメッシュのほっぺと、Faceメッシュの表情を連動させることができます。

詳細設定​

BlendShape名のカスタマイズ​

生成されるBlendShapeの名前を変更できます。

  • 左BlendShape名: デフォルト「CheekStretch_Left」
  • 右BlendShape名: デフォルト「CheekStretch_Right」

他のツールとの互換性や、既存のセットアップに合わせて変更してください。

ほっぺの位置の詳細設定​

「詳細設定」を展開すると、以下の設定ができます:

中心位置​

ほっぺの中心座標(targetMeshのローカル座標系)

直接数値を入力することもできますが、以下の方法も便利です:

  1. Hierarchyで空のGameObjectを作成
  2. ほっぺの位置に移動
  3. 「選択オブジェクトの位置を左ほっぺに設定」ボタンをクリック

伸ばす方向​

ほっぺが伸びる方向のベクトル

デフォルトでは左右方向(Left/Right)ですが、斜めや前方向など自由に設定できます。

「方向を正規化」ボタンで長さを1に正規化できます。

デバッグ機能​

デバッグビジュアル生成​

「ほかの設定」セクションで「デバッグビジュアル生成」をONにすると、Contact ReceiverとPhysBoneの位置に半透明の球体が生成されます。

当たり判定の位置を確認するのに便利です。

警告

デバッグビジュアルは開発時のみ使用してください。アップロード時は不要なポリゴンになります。

Exメニューのカスタマイズ​

メニューの編集​

アバターのExメニューに自動的に追加されるメニュー項目をカスタマイズできます。

  1. Hierarchyで「MochiMochiSystem」の子オブジェクト「もちもちメニュー」を選択
  2. Inspectorでメニューの設定を編集

編集できる項目:

  • メニュー名
  • トグル項目の名前
  • アイコン
  • サブメニューの構成

メニューの削除​

Exメニューが不要な場合は、「もちもちメニュー」オブジェクトを削除してください。

Contact ReceiverとPhysBoneの機能は残りますが、ON/OFFの切り替えができなくなります。

Animator Controllerの手動管理​

自動生成を無効化​

「ほかの設定」セクションで「Animator Controller自動生成」をOFFにすると、Animator Controllerが自動生成されなくなります。

既存のAnimator Controllerに手動で統合したい場合に使用してください。

生成されるパラメータ​

以下のパラメータが生成されます:

BlendShape制御​

  • LeftCheek_Touch (Float): 左ほっぺのContact値
  • LeftCheek_Stretch (Float): 左ほっぺのPhysBone値
  • RightCheek_Touch (Float): 右ほっぺのContact値
  • RightCheek_Stretch (Float): 右ほっぺのPhysBone値

メニュー制御​

  • MochiMochi_ContactEnabled (Bool): Contact ReceiverのON/OFF
  • MochiMochi_PhysBoneEnabled (Bool): PhysBoneのON/OFF

パフォーマンスの最適化​

影響範囲を小さくする​

影響範囲を小さくすることで、変形する頂点数を減らし、BlendShapeのサイズを削減できます。

減衰タイプの選択​

  • Constant: 最も単純で負荷が低い
  • Linear: バランスが良い
  • Smooth: 品質重視

パフォーマンスが気になる場合は、LinearまたはConstantを選択してください。

PhysBoneの最適化​

PhysBoneの物理計算は負荷がかかるため、以下を検討してください:

  • Pull値を大きくして動きを抑える
  • Stiffnessを大きくして計算頻度を減らす
  • 不要な場合はPhysBoneをOFFにする

複数のメッシュへの適用​

同じアバターの異なるメッシュにもちもちを追加したい場合は、複数のコンポーネントを追加できます。

ただし、以下に注意してください:

警告

同じメッシュに複数のコンポーネントを追加すると、BlendShapeが競合する可能性があります。 異なるメッシュ(例:BodyとFace)の場合は問題ありません。

Tips​

ほっぺ以外への応用​

このツールは名前こそ「ほっぺ」ですが、以下のような応用も可能です:

  • お腹をもちもちにする
  • 太ももをもちもちにする

位置と方向を調整するだけで、様々な部位に適用できます。

左右で異なる設定​

左右対称モードをOFFにすることで、左右で異なる設定ができます:

  • 左ほっぺは柔らかく、右ほっぺは硬く
  • 左右で異なる表情
  • 片方だけPhysBoneを有効化

アニメーション上書き​

既存のAnimatorに追加で統合されるため、既存のアニメーションと共存できます。

Write Defaultsの設定は自動的にアバターの設定に合わせられます(Modular Avatarの機能)。