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