Obi Softbodyとは?

Obi Softbodyは、Virtual Method社が開発した高性能なソフトボディ物理エンジンです。

パーティクルベースの物理シミュレーションにより、ゼリーやゴム、粘土のような柔らかい物体の動きをUnityで表現できます。

このアセットはUnityBurstJobsCollectionsMathematicsパッケージを使用し、数千のポリゴンで構成される複雑なソフトボディをリアルタイムでシミュレートします。オブジェクトは弾性変形(元の形状に戻る)だけでなく、塑性変形(変形が残る)も表現でき、より現実的な物理挙動を実現できます。

価格情報

Unity Asset Storeでの価格は約$60となっています。

(2025年12月現在)

サンプルを触ってみる

Ball Pool

ゴムのようなボールを生成してBall Poolに貯めるデモです。

Deformable Barrels

おもりを落としたり、ボールを投げつけてドラム缶を変形させるデモです。

FullBodyVolumetricSoftbody

人型キャラクターを使ったボリューメトリックソフトボディのデモです。キャラクターの体が物理的に変形する様子を確認できます。

ObstacleCourse

Fall Guysのようにゴールを目指して進むゲームのサンプルです。

メッシュをSoftbodyに設定する

Obi Softbodyをプロジェクトに追加すると、メニューの3D Objectの下にObiというメニューが追加されます。

Obi Solverを選択するとObi Solverオブジェクトが生成されます。

Softbodyにするオブジェクトは、Obi Solverの子になっている必要があります。

Obi Solverとは?

Obi Solverは、Obi Softbodyの物理シミュレーションを管理する中核となるコンポーネントです。

すべてのSoftbodyオブジェクトはObi Solverの管理下で動作し、このコンポーネントが物理計算の処理を一元的に制御します。

Obi Solverの主な役割:

  • 物理シミュレーションの統合管理: 複数のSoftbodyオブジェクトを効率的に処理
  • パフォーマンス最適化: 必要な制約(コンストレイント)のみを使用してパフォーマンスを向上
  • モジュラー設計: プロジェクトに必要な機能のみを選択して使用可能
  • 自動カメラカリング: 画面外のSoftbodyは計算を停止してリソースを節約

Obi Softbodyを追加する

次にObi/Obi Softbodyを選択すると、

  • Skinned Mesh Renderer
  • Obi Softbody
  • Obi Softbody Skinner

を持ったオブジェクトが追加されます。

メッシュを割り当てる

Skinned Mesh RendererMeshにメッシュを割り当てます。

今回はデフォルトで入っているシリンダーを割り当てました。

Blueprintを割り当てる

BlueprintSoftbodyの設定を行うものです。

Obi SoftbodyコンポーネントのCreateボタンから作ることができます。

プロジェクト内に保存してください。

作成したBlueprintInputMeshにメッシュを割り当てます。

他にも細かい設定ができます。

最後に下の方にある、Generateボタンを押します。

実行する

これで実行するとシリンダーがSoftbodyとして機能します。

まとめ

今回はObi Softbodyというアセットを紹介しました。

重さでオブジェクトを変形させたいとか、

体の一部を揺らしたいとか、

Fall Guysのようなゲームを作りたいとか、

使えそうなケースは多いと思います。

設定項目が多く使いこなすのはなかなか大変ですが、

ゲーム内で柔らかい物体を取り入れたい場合に参考にしてみてください。