MADE WITH UNITY | Raycast 작동 문제 해결
unity 유니티 공부 2025. 11. 16. 11:37 |https://www.youtube.com/watch?v=RkJyyi6lmQ8&list=PL412Ym60h6uvqYiCVKk5NiEFpDEwOMQFX

물리 선을 생성해서 여기에 닿는 오브젝트가
뭔지 알아내는 용도
레이는 다른 오브젝트 감지를 위해 많이 쓰는 기능이다
원리는 콜라이더 가진 오브젝트를
레이저 형식으로 쏴서 검색하는 것
레이저 당할 오브젝트는 꼭 collider 컴포넌트를 가지고 있어야 한다
+
if (Physics.Raycast(transform.position, transform.forward))
{
// 광선이 어떤 콜라이더에든 닿았을 때 실행되는 코드
Debug.Log("Hit something!");
}
닿았는지(bool 값)만 확인하는 형태
+
Ray 의 방향이 올바른지
Ray 의 길이가 적당한지
해당 오브젝트의 Layer 가 제대로 설정되었나 확인하라
LayerMask 쓴다면,
Raycast 에서 maxDistance도 같이 써라
벽, 장식은 무시한 특정 대상으로 제한함
지정된 거리 이내만 검사험
+

Queries Hit Trigger
Project Settings → Physics → Queries Hit Triggers
Trigger도 감지해야 하는 경우
킴
Raycast나 Overlap이 너무 많은 Trigger에 걸려서 원치 않는 감지가 너무 많을 때
끔
+


raycast 는 scene 창에서 보이지 않는다
Gizmos.DrawLine ( ) 함수를 쓰면 씬 창에서도 보인다
또는!
Analysis - Physics Debugger 를 활용하면
실시간 모든 레이 캐스팅을 쉽게 확인 가능함

+

마우스 클릭 과 레이 캐스트 를 활용해서
월드 오브젝트를 클릭하는 상호작용 만들기
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
// 마우스 위치에서 레이 생성
이걸 이용함
자세한 강좌 링크
https://cafe.naver.com/unityhub/146263?utm_source=youtube-dc&utm_medium=social&utm_campaign=kr_letyouknowanything_raycasting
