유니티/프로젝트정리

Debug.DrawRay(), RaycastHit2D hit 으로 바닥체크

KFRI 2024. 4. 30. 12:36

예시

void FixedUpdate()
{

    Debug.DrawRay(transform.position, new Vector3(0, -1, 0) * 0.5f, new Color(1, 0, 0), LayerMask.GetMask("Ground"));

    RaycastHit2D hit = Physics2D.Raycast(transform.position, new Vector3(0, -1, 0), 0.5f, LayerMask.GetMask("Ground"));

    if (hit.collider != null)
    {

        Debug.Log(hit.collider.name);

    }
}

1.

Debug.DrawRay(시작점,선의길이와 방향,색깔, 감지하고싶은 Mask)

-선을 그어주는 함수로 일반적으로 씬화면에서만 확인할수있다

 

2. RaycastHit2D hit=Physics2D.Raycast 시작점,감지할 거리와 방향,색깔, 감지하고싶은 Mask)

-원하는 거리안(직선거리)에 들어오는 해당Mask를 가진 오브젝트 감지

 

3. if (hit.collider != null)  ->물체가 감지되면
    {

        Debug.Log(hit.collider.name);  ->응답

    }