유니티/기능
유니티 레이캐스트(Raycast) 확인하기
MJ_119
2024. 8. 8. 12:29
@ 레이캐스트 확인하기(raycast)
상단 탭 Window -> Analysis -> Physics Debugger 클릭 후 Queries -> Show All 클릭
// 조준 코드
public GameObject aimtarget;
public void Aim()
{
// 목표물 조준 및 식별
Transform camTransform = Camera.main.transform; // 현재 활성화된 주 카메라의 Transform을 가져옴
RaycastHit hit;
if (Physics.Raycast(camTransform.position, camTransform.forward, out hit, Mathf.Infinity))
{
print("Hit : " + hit.point);
aimtarget.transform.position = hit.point;
}
}
- Physics.Raycast는 레이캐스트를 수행하는 함수입니다.
- camTransform.position: 레이캐스트의 시작 위치를 카메라의 현재 위치로 설정합니다.
- camTransform.forward: 레이캐스트의 방향을 카메라의 앞 방향으로 설정합니다.
- out hit: 레이캐스트가 충돌한 지점의 정보를 hit 변수에 저장합니다.
- Mathf.Infinity: 레이캐스트의 최대 거리로 무한대를 설정합니다. 즉, 충돌이 일어날 때까지 레이캐스트를 무제한으로 연장합니다.