속성 |
기능 |
Is Trigger |
활성화되면 이 충돌체는 트리거 이벤트로 사용되고, 물리 엔진(physics engine)은 무시하게 됩니다. |
Material |
충돌체가 서로 어떻게 상호작용하는지 결정하는 Physic Material을 설정합니다.(예를들어 메탈, 고무, 플라스틱, 얼음 등의 설정을 하여 마찰과 튕기는 효과를 조절할 수 있습니다.) |
Offset |
X,Y 충돌체 시작 위치 |
Size |
X,Y 방향의 충돌체 크기 |
충돌체는 리지드바디(Rigidbodies)와 함께 유니티에서 물리를 재현하기 위해 작동합니다. 리지드바디는 오브젝트가 물리력에 지배 하에 있게 하는 반면, 충돌체는 오브젝트가 서로 충돌할 수 있게 해줍니다. 충돌체에 리지드바디가 반드시 부착되어야 하는 것은 아니지만, 해당 오브젝트가 충돌의 결과로 움직이게 하려면 반드시 리지드바디가 부착되어야 합니다.
즉, 충돌체는 충돌을 인식하는 역할을 하지만 물리적 결과를 얻으려면 리지드바디가 있어야만 합니다. Is Trigger를 사용하는 이유는 물리 엔진을 배제하기 위해서입니다. 자신 역시도 영향을 받지 않게 되고 다른 오브젝트와도 충돌 시에 영향을 주지 못하게 됩니다. 충돌, 접촉은 인식해야 하지만 물리적 상황은 배제하기 위한 설정입니다.
물리 시스템의 설정
유니티의 물리 시스템을 사용하기 위해서는 리지드바디와 충돌체의 옵션을 상황에 맞게 사용해줘야 합니다. 물리를 사용해야 하는 경우도 있지만 그렇지 않은 경우도 존재합니다. 잘못 사용할 경우 시스템에 무리가 따를 수도 있습니다. 다음 경우들을 숙지하거나 참고해 물리 엔진을 활용해야 합니다.
*. 게임오브젝트에 충돌체만 붙은 경우
이러한 경우는 가만히 있거나 아주 조금 움직이는 경우에 적합합니다. 주변 환경, 기하구조등에 적합합니다. 리지드바디와 부딪혀도 움직이지 않게 됩니다. 물리엔진에 부하를 주지 않기 위해서는 스크립트를 이용해 위치를 움직이게 하는 일이 없도록 하는 것이 좋습니다.
*. 게임오브젝트에 리지드바디와 충돌체가 붙은 경우
게임오브젝트가 온전히 물리 엔진의 영향을 받아야 하는 경우에 적합합니다. 트랜스폼을 변경하여 게임오브젝트의 위치를 조정하지 않는 것이 좋습니다.
*.게임오브젝트에 IsKinematic 리지드바디와 충돌체가 붙은 경우
물리적 영향을 받지 않고 스크립트로만 이동이 가능하게 할 경우 적합합니다.
*. 게임오브젝트에 Is Trigger 충돌체만 붙은 경우
특정 오브젝트가 영역에 들어 왔는지 감지하는 트리거 역할로 사용됩니다. 절대 움직이지 않는다고 간주하고 사용합니다.
*. 게임오브젝트에 리지드바디와 Is Trigger충돌체가 붙은경우
트리거 영역이 물리적인 힘에 의해 이동이 가능합니다. 스크립트로 이동 시 문제가 생길수 있습니다.
*. 게임오브젝트에 IsKinematic 리지드바디와 IsTrigger 충돌체가 붙은 경우
트리거 영역이 스크립트로 트랜스폼을 변경하여 이동하는 것이 가능합니다.
'Unity' 카테고리의 다른 글
Random.insideUnitCircle (0) | 2016.02.14 |
---|---|
코루틴 (0) | 2016.02.14 |
애니메이션 속도 관련 (0) | 2016.02.11 |
Animator View Layer (0) | 2016.02.11 |
애니메이션 전이(Transition) 옵션 (0) | 2016.02.11 |