Unityで前回、簡単なボールとバーの3Dゲームを作りました。 今回はその続編というかおまけ編です。

ボールがモノにぶつかったら「跳ね返る」っていう 跳ね返り要素の実装方法について解説です。

今回の主な学習のテーマは Rigidbodyと、Physic Material (物理マテリアル) です。

▼BallScript

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class BallScript : MonoBehaviour
{
    //2)Rigidbodyが扱える変数を用意
    private Rigidbody rb;

    // Start is called before the first frame update
    void Start()
    {
        //3)Rigidbodyを取得して代入
        rb = GetComponent<Rigidbody>();

        //4)手前方向に力を加える(z軸)
        //[4-1]力を加える方向を決める
        Vector3 myDirection = new Vector3(0f, 0f, -5f);
        //rb.AddForce(力を加える方向, 力を加えるモード);
        rb.AddForce(myDirection, ForceMode.Impulse); // [4-2]インパルスモードで瞬間的に力を加える
    }

    // Update is called once per frame
    void Update()
    {
        //1)移動の呪文(位置情報の変更)
        //transform.position += new Vector3(x, y, z);
        //transform.position += new Vector3(0f, 0f, -5f)*Time.deltaTime;
    }
}

    コメントを残す