スクリプト/アニメーション
$21.60(割引無し) 【更新日】2018年1月10日
豊満な胸、髪の毛、スカートなどボーンが付いてればリアルに揺れる。
アセットストアで一番人気の「揺れもの」スクリプトです。
VRチャット需要で大量に売れてる今めちゃくちゃ熱いアセット。
キャラクターを可愛く見せるための必須スクリプトだ!
今回の目標
前回記事では基本的な使い方について解説しました。
好評だったので第二弾の記事です。
今回は「挙動パラメータ」について出来る限り調べてみます。
前回記事
2018年5月17日
基本的なセットアップとサードパーティ製品の相性など紹介しました。
セール情報
2018年5月25日更新分
作者セール :14
無料化:1 (Prefabs Cache:$4.99 => 無料化)Prefabの直接アクセスとプーリング
新作アセット:50
日本作家さんの新作無料アセット
ノスタルジックでステキなピアノ音楽。5回聴きました♫
Free Simple Japanese Kanji Decal
269 Simple Japanese Kanji Decal(有料版っぽいけど何故か無料・・・$4の可能性大)
海外作家さんの新作無料アセット
- Free Asset - 2D Handcrafted Art(2Dアクションのリアルな背景が無料!)
- Free Rug Pack(空飛ぶ絨毯ごっこして遊べる)
- RPG Character Lite(独特な質感のファンタジーキャラ素材)
チュートリアル
2Dゲーム開発の教材用素材。キャラや背景、Timemapのブラシなど
Unityのオンライン授業で使うためのパーツです。サンプルシーンは入ってません。
ユニティちゃんの髪の毛を揺らす
まず髪の毛っぽいオブジェクト名を探して、良い感じ回転したらそれだ!
「J_L_HairTail_00」と「J_R_HairTail_00」を見つけよう。
スクリプトをアタッチする
スクリプトを置く場所は、
・揺らすゲームオブジェクトに設置
・全然別の空のゲームオブジェクトに設置
両方とも正解です。
私の場合は、複数のパターンを作っておきたいので、
↑のようにON/OFFしやすく複数オブジェクトを作って作業しています。
前者の方はギズモが表示されるから、どちらもメリットがあって作業しやすい。
デフォルトにちょっと手を加える
白い球体っぽいギズモが現れますので、
髪のサイズに合わせて「Raius」を0.1に指定しました。
「End Offset」は、これだけ長いボーンの場合は特に触らなくても良いですが、
一応、「Y」に「-0.1」を入れました。
ボーンが1本だけの時とか、短いときに延長として使えます。
実行して移動させる
ユニティちゃんのがバインバインと揺れて「バネ」みたい。
この違和感は何とかしたいですね。
Dynamic Boneのパラメータを調査
ボーンを揺らすスクリプトを手に入れたはいいが、パラメータを完璧に把握できてない方も多いはず!
もちろん私もさっぱり分かってません。
ですので今回は、揺れもの職人にお近づきになれるように、
挙動解析まとめ記事を作る事にしました。
まずココ!
- Damping(減衰)
- Elasticity(弾性)
- Stiffness(剛性)
- Inert(不活性 / 鈍い / のろさ)
単語1つだけではチンプンカンプンですよね。
1.Damping(減衰)
不要な機能はゼロにして、極端なパラメータにして実験!
ちなみにこの4種類のパラメータは、ゼロに近づくほど効果が現れて、
1になるほど挙動が強く表れます。
もっと簡単に説明すると、「1になるほど固くなる」
実験スタート
サンプルお姉さんのしっぽで実験したら面白い結果になりました。
まるでヘビ!
オブジェクトの親をただ移動させてるだけですが、
ボーンが引っ張られるように付いてくる挙動になりました。
空中で姿勢がピタリと止まります。(パラメータが1になるほどピタリと止まる)
ユニティちゃんで検証
宇宙空間にいるいような面白い事になりました。
女神転生に出て来そうなラスボス感。
正しい使い方で検証
他のパラメータを微妙に付け加えて違いを確認してみました。
「0.403」と「1.0」2つのバリエーション↓
ゆっくりと元の位置に戻ろうとする速度が変わりました。
結果
「Damping(減衰)」は『ゆっくりと初期位置に戻ろうとする挙動』
ヘアワックスやケープで髪型を固定するようなイメージでした。
■パラメータの使い方
0.1以下にするとバグってユニティちゃん本体が50cm程ワープします。
実用的なレンジは「0.1〜1.0」が最適でしょう。
2.Elasticity(弾性)
他のパラメータを0にしてElasticityの値だけで検証します。
強烈に荒ぶる!触ってすぐに分かりました。
揺れる度合いに関するパラメータです。
値が1に近くなればなるほど、揺れが収まって固くなる。
「釣り竿を揺らすリアルな挙動」に使えそうな感じがしますね!
ユニティちゃんで検証
同じく他のパラメータをゼロにしてElasticityの値だけでまずは検証。
まだ移動してないのにいきなり揺れ動きました。
しばらくすると止まります。
移動するとワチャワチャになって荒ぶるので単体では使い物にはなりません。
パラメータの強さによる変化
他3つのパラメータを若干入れ込んで「Elasticity」の値を増やしてみました。
5秒おきにパラメータが変化しています(15秒の動画)
ぷるんぷるん♫
結果
「Elasticity(弾性)」は『揺れの強弱を付けるためのパラメータ』
弾性なので弾力のある挙動に関する揺れパラメータ。
つまり、おpiに使う値に違いない!(大人の都合で書けない)
■パラメータの使い方
0.1以下にすると揺らしてもいないのに勝手に揺れたり、
移動させるとユニティちゃん本体が50cm程ワープする場合がありました。
実用的なレンジは「0.1〜1.0」が最適でしょう。
3.Stiffness(剛性)
Stiffnessだけ可変させてまずは実験!
Stiffness単体で使うと、
若干ですが「1.Damping(減衰)」に似たヘビのような動きをしてくれます。
(頭が移動した方向に向く)
ユニティちゃんも上手くいかない
基本的にStiffness単体では荒ぶって使えないと思います。
通常の使い方で試す
髪の毛、今までで一番いい動きしてませんか?
ユニティちゃんのようなロングタイプに丁度良い動きになるパラメータだと思います。
「重み」が付いたような仕上がりになりました。
オマケ:面白い組み合わせを発見!
ヘビのような「Damping」と「Stiffness」を掛け合わせたら・・・
寄生獣のミギーのようにウネウネ動くリアルな生物が作れちゃいました!
頭を取り付けたら絶対に面白い。
VRコントローラー使って獅子舞が出来そうですね。
これはこれで色々な用途に使える!!
結果
「Stiffness(剛性)」は『髪の毛の揺れに最適なパラメータ』
髪の長さに合わせてパラメータに強弱を付けたり、
見た目が重そうな物質に使うと理想的な動きをしてくれそうです。
オマケの「Damping」と「Stiffness」は面白い発見でしたね。
■パラメータの使い方
0.1以下にするとかなり荒ぶりますが、
他のパラメータが0以上であれば回避しやすい感じがします。
4.Inert(不活性 / 鈍い / のろさ)
まずは他のパラメータを0にして「Inert」のみで調査します。
移動すると、先頭がその方向を向いて姿勢を元に戻そうとする力が働く。
恐竜のしっぽのような挙動で、パラメータが強い程ゆっくりと姿勢を修正しようとする。
ユニティちゃんの髪の毛も全く同じ事になりました。
このパラメータ単体で使う事はオススメできませんが、
尻尾のような挙動を作る時の要になる要素だと思います。
他のパラメータと混ぜて使う
ユニティちゃんの髪の毛にも意外と良さそうですが、
「3.Stiffness(剛性)」と比べると、バウンドしているような感じが不自然で気になる。
可愛らしさを表現するならこっちの方が明るくて良いかも?
尻尾なら最強
色々調合して、サンプルとは違うリアル志向な尻尾のパラメータを組みました。
バウンドして戻るタイプではなく、スッと止まるリアルな爬虫類の尻尾です。
結果
「Inert(不活性 / 鈍い / のろさ)」は『しっぽ関連に最適なパラメータ』
元に戻る修正力が働くので、パラメータが強ければ尻尾のような挙動になります。
ちなみに、「1.Damping(減衰)」と組み合わせると、
「3のオマケで紹介したミギー」っぽい事ができますが、挙動は3より微妙でした。
大変長くてGIFアニメ多めな重たい記事になってしまいましたが、
以上で終わりです!
4つのパラメータにはグラフが搭載されていて、
それを使えばもっと複雑な挙動が作れます。
本当はそこまで紹介したかったですが、いつの日か紹介してみたいですね。
次回はコライダーでスカートや髪の毛が体にめり込まなくするセットアップについて、
色々調べてみたいと思います。
Dynamic Boneの記事一覧
① 2018年5月17日
初見さん用。セットアップ方法を解説します。
② 2018年5月25日
挙動パラメータについて徹底的に調査!
Damping(減衰)、Elasticity(弾性)、Stiffness(剛性)、Inert(不活性 / 鈍い / のろさ)
③ 2018年7月1日
Colliderの基本的な特性の紹介と、
衝突判定の実装方法、キャラの髪や胸をぷにぷに触って遊べる方法を紹介。
④ 2018年7月9日
v1.2.0の新機能「DynamicBonePlaneCollider」の使い方を解説。
ベッドで髪が乱れる挙動と、ユニティちゃんのスカートめり込み問題に挑戦。
⑤ 2018年8月13日
真夏のアドベントカレンダーにて、カーブグラフの活用方法と、
パラメータ設定例を紹介しました。
【新サイト】アセット割引情報
$43.20 => 無料化 100%OFF!!
【過去ログ】無料アセット
【過去ログ】作者セール&注目アセット