Unity事例ノート

UNITY

跳ね返る方向をランダムにする

何かにぶつかった後、跳ね返る方向をランダムにできるように、スクリプトを作成してみましょう。

今回の例では、Cubeに向かって真っすぐにボールを転がします。

弾き返されるとき、その角度がランダムで変わっていきます。

弾き返される角度をランダムで変える

Planeを作成しその上に、Cube、Sphereを置きます。

CubeとSphereは、対面に配置しましょう。

Sphereにリジッドボディを追加します。

プロジェクトビューの中に、物理マテリアルを作成します。

右クリック > 作成 > 物理マテリアル

跳ね返りの強さは、「弾性力」になります。

数値を上げれば、よく跳ね返るようになります。

ここでは0.6に設定しました。

NewPhysicMaterial(物理マテリアル)を、Sphereに追加します。

BallScript.csを作成し、Sphereに追加します。

BallScript.csを記述します。

ゲームプレイしてみましょう。

プレイするたびに、跳ね返りの角度がランダムで変化します。

AddForceで力を加える方向は、(x,y,z, ForceMode)で設定します。

Impulseはドンと一気に力を加えるモードです。

Cubwにぶつかれば、velocityをゼロにして速度をリセット。

X方向への力は、-8.0から8.0のランダムにしています。

SCHOOL教室案内