UnityでRayを使って当たり判定がとりたい。
解決したいこと
unityでRaycastで当たり判定が取りたい
例)
unityでレイを打って、レイに当たったら、当たったオブジェクトを消すというのを自分でプログラムしてみたのですが、コンソール上ではエラーは出ていませんでした。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Shooting : MonoBehaviour
{
public float rayDistance;
private void FixedUpdate()
{
if (Input.GetKey(KeyCode.Mouse0))
{
var direction = transform.forward;
Vector3 rayPosition = transform.position + new Vector3(0.0f, 0.0f, 0.0f);
Ray ray = new Ray(rayPosition, direction);
Debug.DrawRay(rayPosition, direction * -rayDistance, Color.red);
RaycastHit hit;
if(Physics.Raycast(ray, out hit))
{
Debug.Log("HITしましたよ"); //コンソールに出てきませんでした。
if (hit.collider.tag == "OBJECT")
{
Destroy(hit.collider.gameObject);
}
}
}
}
}
自分で試したこと
Debug.Logでヒットしたかの判定は取りましたが、コンソールに出ません。
レイは可視化できました(おそらく、レイは可視化と同じ挙動)
0