뮤터블에서는 다음과 같은 다양한 이유로 레벨 오브 디테일(Levels of Details, LOD)을 사용합니다.
- 메모리 사용
- 프로세서 퍼포먼스
- 로딩 시간
뮤터블에서는 캐릭터의 프로시저럴 구성을 활용하여 각 LOD의 전용 다이어그램을 생성함으로써 더욱 최적화할 수 있습니다. 이 방식을 사용하면 베이스 캐릭터 바디와 같은 오브젝트는 각 LOD의 폴리곤 수와 텍스처 크기를 줄이는 것만으로도 일반적인 LOD 최적화를 구현할 수 있습니다. 여기서 더 나아가 오브젝트가 멀어질수록 더 저렴한 연산을 사용하여 LOD마다 서로 다른 구성 프로세스를 정의하는 것도 가능합니다.
캐릭터 팔찌를 예로 들겠습니다. 클로즈업에 사용되는 최상위 LOD에서는 이 팔찌에 피직스 애니메이션이 적용되고 자체 메시와 복잡한 머티리얼을 갖추고 있습니다. 두 번째 LOD는 팔찌를 단순하게 만들기 위해 팔 본에 직접 스킨을 입힌 단일 머티리얼의 리지드 메시로 대체할 것입니다. 세 번째 LOD는 단순히 팔에 텍스처 패치를 붙인 모습이 될 것입니다. 물론 팔찌는 충분히 커야 합니다. 네 번째 LOD에서는 팔찌가 완전히 사라질 것입니다. 이러한 모든 사례를 같은 파라미터를 사용하여 각기 다른 다이어그램으로 정의할 수 있습니다. 따라서 팔찌 컬러의 커스터마이징을 허용하는 상황이라면 모든 LOD에서 컬러가 바뀌는 모습을 확인할 수 있습니다.
컴포넌트의 레벨 오브 디테일 정의하기
그래프에서 몇 가지 다른 노드를 사용하여 LOD를 정의할 수 있습니다. 가장 중요한 노드는 Mesh Component 노드입니다. 이 노드에 정의된 LOD 수는 컴포넌트에 정의될 수 있는 최대 LOD 수를 제한합니다.
예를 들어, Add To Mesh Component 노드는 부모 노드인 Mesh Component 노드 수만큼만 LOD를 생성할 수 있습니다. LOD 핀을 어디에도 연결하지 않으면, 자동 LOD를 사용하지 않는 한 해당 LOD에는 지오메트리가 없게 됩니다.
LOD 선택 방식을 제어하는 LOD 프로퍼티는 표준 언리얼 엔진 프로퍼티입니다. 이러한 프로퍼티는 레퍼런스 스켈레탈 메시 오브젝트에서 복사되며 거기에서 설정할 수 있습니다. 즉, 레퍼런스 스켈레탈 메시 오브젝트에는 반드시 LOD가 있어야 합니다.
오브젝트 프로퍼티(Object Properties) 탭에 보면 더 많은 LOD 세팅이 있습니다.
자동 레벨 오브 디테일
커스터마이징 가능 오브젝트는 매우 커질 수 있으므로 Mesh Component 노드의 자동 LOD 전략(Auto LOD Strategy) 필드를 사용하여 모든 노드를 곱하지 않고도 LOD 생성을 간소화할 수 있습니다. 자세한 내용은 Mesh Component 노드 레퍼런스를 참조하세요.