Version: Unity 6.0 (6000.0)
언어 : 한국어
익스포트할 모델 파일 준비
애니메이션용 모델 만들기

최적의 성능을 위한 모델 생성

다음은 최적의 성능을 발휘하는 모델을 생성하기 위한 몇 가지 팁입니다. 다음 팁 중 일부는 모든 모델에 적용되고 일부는 애니메이션화된 모델에만 적용됩니다.

이러한 기법을 사용하면 모델의 애니메이션 및 렌더링 속도를 높일 수 있지만, 달성하려는 시각적 정확도와 효과의 현실감이 줄어들 수도 있습니다. 성능 향상과 시각적 현실감 사이에서 완벽한 균형을 이룰 수 있는 모든 상황에 적용되는 단 하나의 정답은 없습니다. 캐릭터와 씬의 복잡도에 따라 완벽한 균형을 찾아야 하며, 필요한 전반적인 모습과 현실감을 찾아야 합니다.

폴리곤 수 최소화

사용해야 할 폴리곤 수는 필요한 화질과 타게팅하는 플랫폼에 따라 다릅니다. 다음의 두 가지 대비되는 사실은 모두 참입니다.

  • 메시에 사용하는 폴리곤 수를 줄이면 애플리케이션 실행 속도가 빨라집니다. 빨라지는 이유는 모든 버텍스, 에지 또는 면이 컴퓨팅 리소스를 필요로 하기 때문입니다.
  • 메시에 사용하는 폴리곤 수가 늘어날수록 게임 오브젝트의 세밀도와 자연스러움이 향상됩니다. 이는 폴리곤 수가 작으면 모양을 더욱 세밀하게 제어할 수 있기 때문입니다.

또한 렌더링 리소스에 대해 경쟁하는 다른 요소도 고려해야 합니다. 화면에 동시에 나오는 게임 오브젝트 또는 터레인 오브젝트가 많은 경우 메시당 폴리곤 수를 줄이는 것이 좋습니다.

그래픽스 하드웨어가 처리해야 하는 실제 버텍스 수는 일반적으로 모델링 애플리케이션에서 보고한 수와 같지 않습니다. 모델링 애플리케이션은 일반적으로 모델을 구성하는 고유한 모서리 포인트 수(지오메트리 버텍스 수라고 함)를 표시합니다. 하지만 그래픽 카드의 경우 일부 지오메트리 버텍스를 렌더링 목적으로 두 개 이상의 논리 버텍스로 분할해야 합니다. 예를 들어 버텍스에 여러 노멀, UV 좌표 또는 버텍스 컬러가 있는 경우 버텍스를 분할해야 합니다. 따라서 Unity의 버텍스 수는 일반적으로 3D 애플리케이션에서 제공하는 수보다 많습니다.

최소한의 머티리얼 사용

각 모델의 머티리얼 수를 최대한 적게 유지합니다. 다른 부분에 서로 다른 셰이더를 사용해야 할 때만 한 캐릭터에 머티리얼을 두 개 이상 사용합니다. 예를 들어 캐릭터 모델의 눈에는 특수 셰이더를 사용할 수 있습니다.

단일 스킨드 메시 사용

스킨드 메시 렌더러를 사용하는 애니메이션화된 캐릭터 모델의 경우 캐릭터당 하나의 컴포넌트만 사용해야 합니다. Unity의 애니메이션 시스템은 가시성 컬링 및 바운딩 볼륨 업데이트를 사용하여 애니메이션을 최적화합니다. 모델에서 하나의 Animation 컴포넌트와 하나의 스킨드 메시 렌더러를 사용하는 경우에만 이러한 최적화를 활성화합니다.

단일 스킨드 메시를 대신해서 두 개의 스킨드 메시를 사용하면 모델을 렌더링하는 시간이 대략 두 배가 될 수 있으며 다수의 메시를 사용하는 데 대한 실질적인 이점이 거의 없습니다.

최소한의 뼈대 사용

일반적으로 사용하는 뼈대 수가 적을수록 성능이 향상됩니다. 하지만 뼈대가 많은 캐릭터 모델을 만들어야 할 때도 있습니다. 예를 들어 커스터마이즈 가능한 연결이 많이 필요한 경우입니다. 이러한 추가 뼈대는 빌드 크기를 증가시키며, 각 추가 뼈대에 상대적인 처리 비용이 발생할 수 있습니다. 예를 들어 이미 뼈대가 30개인 릭에 뼈대가 15개 추가되면 Unity가 Generic 모드에서 처리하는 데 50% 더 많은 연산을 수행해야 하므로 처리 시간에 영향을 줄 수 있습니다.

제네릭휴머노이드 유형의 뼈대를 추가할 수 있습니다. 추가 뼈대를 사용하여 재생되는 애니메이션이 없는 경우 처리에 비용이 거의 들지 않습니다. 연결이 존재하지 않거나 숨겨져 있으면 비용이 더 적게 듭니다.

성능상의 이유로 버텍스당 인플루언스가 최대 4개인 선형 블렌드 스키닝을 사용합니다. 하지만 일부 3D 모델링 애플리케이션에서는 4개를 초과하는 뼈대가 버텍스에 영향을 미칠 수 있으므로 성능 소모와 제어 향상을 비교해야 합니다.

순운동학(FK)과 역운동학(IK) 분리

Unity에서 애니메이션을 임포트할 때 모델의 역운동학(IK) 노드를 순운동학(FK)으로 베이크하므로 IK 노드가 전혀 필요하지 않습니다. 하지만 모델에 그대로 두면 애니메이션에 영향을 미치지 않더라도 Unity에서 계산에 포함합니다. Unity 또는 3D 모델링 애플리케이션에서 중복된 IK 노드를 삭제할 수 있습니다. IK 노드를 쉽게 제거하려면 모델링하는 동안 IK 계층 구조와 FK 계층 구조를 별도로 유지합니다.

익스포트할 모델 파일 준비
애니메이션용 모델 만들기