컴퓨터 그래픽스와 계산기하학의 다양한 문제를 해결하기 위해 광선과 표면의 교차검사를 사용하는 기법을 말한다
쉽게 말해 광선을 투사하는 것을 의미한다.
void Update()
{
// TransformDirection을 통해 Local -> World로의 방향으로 변경한다.
Vector3 look = transform.TransformDirection(Vector3.forward);
Debug.DrawRay(transform.position + Vector3.up, look * 10, Color.red);
// RaycastAll을 통해 해당 Ray에 닿는 모든 것들을 hits에 담아둔다
RaycastHit[] hits;
hits = Physics.RaycastAll(transform.position + Vector3.up, look, 10);
// 부딪힌 물체들의 이름들을 출력한다.
foreach (RaycastHit hit in hits)
{
Debug.Log($"Raycast {hit.collider.name} !");
}
}