Raycast
Physics.Raycast
Debug.DrawRay 체크 : 거리와 위치를 디버깅 할 수 있다.(유니티 씬장면에서만 나옴)
Debug.DrawRay(transform.position, transform.forward * 8, Color.red);
(위 scene, 아래 game)
충돌한 오브젝트 반환하기
RaycastHit hit;
if (Physics.Raycast(transform.position, transform.forward, out hit, 8))
{ //광선을 쏴서 충돌한 게임 오브젝트를 레이캐스트 변수에 저장처리한다.
Debug.Log(hit.collider.gameObject.name);
} //광선이 충동한 게임 오브젝트의 이름을 콘솔창에 출력한다.
콘솔창을 보면 ray에 닿은 오브젝트를 확인 할 수 있다.
중첩되는 오브젝트일경우 Physics.RaycastAll
RaycastHit[] hits; //Raycast데이터 저장용 배열 설정
hits = Physics.RaycastAll(transform.position, transform.forward, 8.0f);
for(int i=0; i<hits.Length; i++)
{
RaycastHit hit = hits[i];
Debug.Log(hit.collider.gameObject.name);
}
Raycast데이터 저장용 배열을 사용한다.
정해진 길이만큼 통과한 오브젝트들의 이름을 반환한다.
'유니티 > 레퍼런스' 카테고리의 다른 글
유니티)플레이어프렙스 PlayerPrefs 데이터 저장하기 (0) | 2018.12.21 |
---|---|
유니티) ScreenPointToRay 카메라로 부터의 스크린의 점 (1) | 2018.12.19 |
유니티) 오브젝트 찾기(Tag,이름,자식 오브젝트 찾기,꺼져있는 오브젝트) (3) | 2018.12.14 |
유니티) 충돌체크 OnTriggerEnter , OnCollisionEnter (Collider, Collision) #2Roll a Ball 로 연습하기 (1) | 2018.12.08 |
유니티) Roll a Ball 튜토리얼 연습하기 #1 (0) | 2018.12.07 |