##Obi Rope
このアセットはマジで最強です。→【Obi Rope】
このアセットを使うまではロープの表現をLineRendererで表現してました。
使いこなすまではしんどいですが、簡単なロープの挙動を実装する程度であれば
かなりコスパの良いアセットです。
今回は長縄跳びっぽいものを再現しながら使い方をメモしていきます。
使用したアニメーションが太極拳みたいなモーションなので
長縄跳びとしては意味不明な回し方ですが、
ロープの挙動としてはばっちりです。
##作成デモ
では実際に作っていきます。
アセットをインポートしたら大量にエラーが出ますがシカトしましょう。
だいたいプレイボタン押したら消えます。
完了すると3D Object
の欄にObi Rope
作成欄が出現するのでfully set up
を選択します。
次にEdit curve
を押して
白い丸を動かしていい感じの位置にロープのポイントを設置します。
今回はヒューマノイドの左手付近にポイントを移動させました。
移動させた後は、再度Initialize
を押してあげると画像のように新しい位置に
ロープが生成されます。
次に、ロープの末端を手の位置に固定し、手の動きに追従するように設定します。
Edit Particles
を押すと画像のように青い点が大量に画面に表示されます。
末端の青い点を選択した状態で
Obi Pin Constrains
のAdd Pin Constrains
を押します。
そうすると設定画面が表示されます。
Pinned to
に固定させたい座標を持ったオブジェクトをアタッチします。
ただし、アタッチするオブジェクトにはObiコライダーが必要です。
さらに、Obiコライダーアタッチ時に該当するオブジェクトに通常のコライダーが無い場合、
下記のように怒られます。
※Initialize
を押すと、警告も出ますがPinの設定などが外れてしまいます。
なので、Pinの設定後にカーブをいじって、
カーブの設定をEditor上に反映させるためにInitialize
を押す。。。
などをやってしまうとPinの設定は吹き飛びます。
##見た目の設定
Materialは通常通りMesh Renderer
に設定すればInitialize
せずとも反映されます。
Uv Scaleなどもパラメータとして用意されているので簡単にきれいなループ模様が再現できます。
太さはSection Thickness Scale
で変更可能です。
Section
というパラメータを開けば、
ロープの形状もGUIから変更可能です。(これすごいですよね)
##挙動の設定
パラメータが山盛りなのでよく使うものだけメモします。
また新しい便利機能発見したら更新します。
####物理判定
ロープと接触させたいオブジェクトにObiコライダーをアタッチすればOKです。
2011/11/29 追記
だいぶ変更されてたのでメモします。
v6.3時点のメモとなります。
まずBluePrintという項目が増えています。
BluePrintでロープの簡単な性質を設定できるようです。
今回はサンプル用シーンのBluePrintを使って検証してみました。
ObiRopeにBluePrintを設定するとEditPathの押下が可能になります。
PathEditorでPassを選択して動かしたり、消したり追加したりできます。
1つのPassを動かすと、ロープの末端のPass以外は画像のように3つの矢印が出てきます。
UnityのAnimationCurveのように湾曲の角度を調整するために用意されているようです。
ロープの固定にはObi Particle Attachment
を使用します。
先ほどのPathEditorでPathを選択するとNameという項目が表示されていたと思います。
そのNameをParticle group
で指定することで何に追従させるか、固定するかなどを設定できます。
##まとめ
Obi Ropeはいいぞ。