[Unity] RayCast

Yerin·2023년 7월 13일
0
post-thumbnail

raycast로 앞에 있는 물체 파악하기

void Update()
    { 
        Vector3 look = transform.TransformDirection(Vector3.forward);
        Debug.DrawRay(transform.position + Vector3.up, look * 10, Color.red);
        RaycastHit hit;
        if (Physics.Raycast(transform.position + Vector3.up, look, out hit, 10))
        { 
            Debug.Log($"Raycast {hit.collider.gameObject.name} !");
        }
    }

뒤에 있는 큐브 2까지 탐색하고 싶다면?

업로드중..

배열을 이용한다!

 void Update()
    {
       
        Vector3 look = transform.TransformDirection(Vector3.forward);
        Debug.DrawRay(transform.position + Vector3.up, look * 10, Color.red);

        RaycastHit[] hits;
        hits = Physics.RaycastAll(transform.position + Vector3.up, look, 10);

        foreach(RaycastHit hit in hits)
        {
            Debug.Log($"Raycast {hit.collider.gameObject.name} !");
        }

    }

업로드중..

❗ raycast를 활용할 수 있는 곳 ❗

카메라와 캐릭터 사이에 장애물이 있을 경우
raycast를 이용해 탐색해서 캐릭터를 가리지 않도록 할 수 있다.

profile
재밌는 코딩 공부

0개의 댓글