메시 콜라이더는 메시의 셰이프와 정확히 일치하여 매우 정확한 충돌 시뮬레이션을 구현합니다.
메시 콜라이더는 셰이프, 위치, 스케일을 비롯하여 할당된 메시와 일치하도록 충돌 지오메트리를 구축합니다. 이를 통해 게임 오브젝트에서 콜라이더의 셰이프를 보이는 메시의 셰이프와 정확히 동일하게 만들 수 있으므로 보다 정밀하고 사실적인 충돌을 생성할 수 있습니다.
메시 콜라이더의 정밀도는 구체, 박스, 캡슐 콜라이더 같은 기본 콜라이더보다 처리 오버헤드가 더 높습니다. 따라서 메시 콜라이더는 높은 처리 능력이 필요하지 않은 콜라이더나 기본 콜라이더 또는 복합 콜라이더의 오버헤드가 큰 충돌에만 사용하는 것이 좋습니다. 정적인 씬 지오메트리에는 메시 콜라이더를, 움직이는 게임 오브젝트에는 복합 콜라이더를 사용하는 것이 좋은 접근 방식입니다.
대부분의 경우 메시 콜라이더는 복합 콜라이더와 유사한 솔루션을 제공하며, 주요 목적은 셰이프가 복잡한 아이템에 정확한 충돌을 제공하는 것입니다. 메시 콜라이더의 장점과 한계점을 고려할 때는 일반적으로 복합 콜라이더와 비교하는 경우가 많습니다.
메시 콜라이더의 주요 이점은 다음과 같습니다.
그러나 메시 콜라이더도 몇 가지 중요한 한계점이 있습니다.
프로젝트에 따라 적절한 옵션이 항상 달라질 수 있으므로, 각 설정을 테스트하고 물리 프로파일러를 사용하여 콜라이더 설정의 효율성을 파악해야 합니다.
메시 콜라이더는 오목(concave)한지 볼록(convex)한지 여부를 나타내는 표시에 따라 다르게 작동합니다. 기본적으로 PhysX는 메시 콜라이더를 오목한 것으로 간주합니다.
수학에서 ‘컨케이브’와 ‘컨벡스’는 셰이프를 설명하는 데 사용되는 용어입니다.
공 같은 컨벡스 셰이프의 경우, 바깥쪽으로 휘어지는 선만 있습니다. 경계의 두 지점을 연결하는 모든 선분은 셰이프 내에서 완전히 유지됩니다. 컨케이브 셰이프는 경계가 안쪽으로 휘어진 ‘동굴’ 또는 움푹 들어간 부분이 하나 이상 있습니다(예: 바나나). 경계에서 두 점을 연결하는 선분은 셰이프 외부의 공간을 가로지르는 경우도 있습니다.
컨케이브 콜라이더에는 몇 가지 한계점이 있습니다. 컨케이브 메시 콜라이더는 정적(물리 바디가 없음) 또는 키네마틱(키네마틱 물리 바디가 있음)만 될 수 있습니다. 자세한 내용은 콜라이더 유형을 참조하십시오. 컨케이브 메시 콜라이더는 컨벡스 콜라이더와만 충돌할 수 있습니다. 두 개의 컨케이브 콜라이더는 접촉해도 충돌이 발생하지 않습니다.
충돌해야 하는 컨케이브 메시 콜라이더가 두 개 있는 경우 충돌이 얼마나 정확해야 하는지에 따라 다음 중 한 작업을 수행할 수 있습니다.
셰이프의 오목한 부분에서 정확한 충돌이 발생하지 않아도 되는 경우, 인스펙터에서 메시 콜라이더 중 하나를 볼록한 것으로 표시합니다(Is Convex 활성화). 그러면 할당된 컨케이브 메시와 비슷하지만 오목한 선으로 채워져 볼록하게 만들어진 ‘헐(hull)’이라는 컨벡스 콜라이더 셰이프가 새롭게 생성됩니다.
셰이프의 오목한 부분에서 정확한 충돌이 발생해야 하는 경우 컨벡스 콜라이더로 구성된 복합 콜라이더를 사용합니다.
메시 콜라이더에 할당된 메시는 런타임 시 셰이프를 변경하지 않아야 합니다.
메시가 셰이프를 변경할 때마다 물리 엔진은 메시 콜라이더 지오메트리를 다시 계산해야 하므로 상당한 수준의 성능 오버헤드가 발생하게 됩니다. 따라서 메시 콜라이더가 사용 중인 메시의 지오메트리를 수정해서는 안 됩니다. 메시가 런타임 시 충돌과 셰이프 변경을 모두 수행해야 하는 경우 일반적으로 기본 콜라이더 또는 복합 콜라이더를 사용하여 메시 셰이프를 대략적으로 만드는 것이 좋습니다.
충돌 메시의 면은 단면입니다. 즉, 게임 오브젝트가 메시를 한 방향으로 지나갈 수 있지만 다른 방향으로 지나가면 메시와 충돌합니다.
메시 콜라이더가 사용하는 기본 알고리즘 및 데이터 구조에 대한 자세한 내용은 지오메트리에 대한 Nvidia PhysX 기술 자료를 참조하십시오.