====== 레이어 기반 충돌 감지 ====== 게임 오브젝트에 레이어를 다르게 설정해서, 충돌 감지를 하지 않게 할 수 있다. * [[http://unitykoreawiki.com/index.php?n=KrMain.LayerBasedCollision]] ===== 목표 ===== | {{:language:unity:layer-exam-1.png?nolink|}} | (A)는 화면은 마음대로 돌아다닌다. \\ (C) 공중에서 떨어진다. \\ (B)는 화면에 클릭을 감지해서 반응한다. \\ (D) 화면상의 클릭 위치를 보여준다. | 게임 오브젝트의 충돌 체크에 대한 룰은, * Crosshair는 (B) 영역에 있는 경우 Raycast 충돌 체크를 해서 화면 상의 위치를 구한다. \\ (D) 와 (B)는 충돌 체크가 발생 되어야 한다. * (C)와 (A)는 화면에서 임의 생성되거나 자유롭게 움직이는 오브젝트로, (B)와 충돌되면 안된다. 충돌체크가 생겨 움직임에 버벅대면 안된다. \\ (C)+(A)는 (B)와 충돌하면 안된다. 다시 정리하면, * (D) 와 (B)는 충돌 체크가 발생 되어야 한다. * (C)+(A)는 (B)와 충돌하면 안된다. ===== 구현(설정) ===== ==== 1단계 : 레이어 추가 ==== * DropZone 레이어를 추가하고, * (B)와(D)를 DropZone 레이어로 설정 ==== 2단계 : 충돌 체크 설정 ==== | 메뉴의 \\ Edit >> Project Settings >> Physics 클릭 | {{:language:unity:layer-exam-2.png?nolink&300|}} | | DropZone 레이어 끼리만 충돌 설정하게 한다. | {{:language:unity:layer-exam-3.png?nolink|}} | DropZone 레이어 끼리만 충돌 설정하게 되서 원하는 환경이 설정된다.