1206 ボールを跳ね返らせよう! - mishimatsu/AdventCalendar2014 GitHub Wiki
前回は、ボールに重力を与えて、地面に落下させてみました。
しかし、ボールは、跳ね返らず、地面にピタッとひっついた感じで止まってしまいましたね。
今日は、更にパラメータを追加して、地面にあたったらボールが跳ね返るようにしてみましょう。
まずは、Unityを起動します。
昨日、作ったシーンが表示されたと思います。
跳ね返りに必要なパラメータを設定します。
メニューのAssets→Create→Physics Materialを選択します。
ProjectにPhysicsMaterialが追加されました。
名前は、BallPhysicsMaterialにしておきましょうか。
このPhysicsMaterialは、物理現象のためのパラメータになります。
InspectorにあるBouninessの値を0.5に変更してみましょう。
この物体に当たったら50%の速度になります。
0なら跳ね返らず、1ならぶつかったスピードと同じスピードで跳ね返ることになります。
PhysicalMaterialをボールに設定する。
ボール(Sphere)を選択します。
InspectorのSphere ColliderのMaterialの項目に、今回作ったBallPhysicsMaterialを設定します。
Noneとかかれたテキストボックスの横に◎があるので、クリックします。
クリックするとメニューが表示されます。
先ほど作成したBallPhysicasMaterialがリストに表示されていると思います。
BallPhysicasMaterialをダブルクリックして選択します。
MaterialがNoneからBallPhysicsMaterialへ変わりましたか?
一度、実行してみましょう。
実行は、Windowの上にある▶ボタンでしたね。
▶ボタンを押して、実行してみましょう。
地面にあたって、跳ね返りましたね。
ちょっと、跳ね返りが弱いかもしれません。
もっと、跳ね返るようにしてみましょう。
練習問題
ボールがもっと跳ね返るようにBouncinessを変更してみよう。
地面に専用のGroundPhysicsMaterialを作成して、適応してみましょう。
明日は、ドミノ倒しを作ってみます。
お楽しみに!
それでは、楽しいUnity Lifeを!
参考資料
リジッドボディ / Rigidbody
物理特性マテリアル / Physics Material