top of page

RayCastを飛ばす.貫通(オブジェクト)

    void Ray(){


        // outパラメータ用に、Rayのヒット情報を取得するための変数を用意
        RaycastHit hit;

        // Rayを飛ばす(第1引数がRayの発射座標、第2引数がRayの向き)
        Ray ray = new Ray (transform.position, transform.forward);

        // シーンビューにRayを可視化するデバッグ(必要がなければ消してOK)
        Debug.DrawRay(ray.origin, ray.direction * 100.0f, Color.red, 0.0f);

        // Rayのhit情報を取得する
        if (Physics.Raycast(ray, out hit, 100.0f))
        {


            // Rayがhitしたオブジェクトのオブジェクト名を取得
            string hitName = hit.collider.gameObject.name;

            //ヒットしたオブジェクトの名前がTESTなら
            if (hitName.Equals("TEST")) 
            {

            }
            //TEST以外の名前なら
            else 

            {

            }

        }
        // Rayがヒットしていない場合は
        else 
        {

        }

    }
 

bottom of page