모델을 선택하면 모델 파일에 대한 Import Settings 가 인스펙터 창의 Model 탭에 표시됩니다. 이 설정은 모델에 저장된 여러 요소와 프로퍼티에 영향을 미칩니다. Unity는 이런 설정을 사용하여 각 에셋을 임포트하므로 프로젝트의 다양한 에셋에 적용할 설정을 조정할 수 있습니다.
이 섹션은 모델 탭의 각 섹션에 대한 정보를 제공합니다.
(A) 씬 레벨의 프로퍼티(예: 광원과 카메라 임포트 여부, 사용할 스케일 요소 등)
(B) 메시 관련 프로퍼티
(C) 토폴로지, UV와 노멀 처리를 위한 지오메트리 관련 프로퍼티
| 프로퍼티 | 기능 |
|---|---|
| Scale Factor | (모델 파일의) 원본 파일 스케일이 프로젝트의 의도한 스케일에 맞지 않는 경우 임포트된 모델에 글로벌 스케일을 적용하려면 이 값을 설정합니다. Unity의 물리 시스템에서는 게임 월드의 1미터가 임포트된 파일의 1유닛을 의미합니다. |
| Convert Units | 모델 파일에 정의된 모델 스케일링을 Unity 스케일로 전환하려면 이 옵션을 활성화합니다. |
| Bake Axis Conversion | Unity와 다른 축 시스템을 사용하는 모델을 임포트할 경우 이 프로퍼티를 활성화하여 축 전환 결과를 직접 애플리케이션 에셋 데이터(예: 버텍스 또는 애니메이션 데이터)로 베이크할 수 있습니다. 축 전환을 시뮬레이션하기 위해 런타임 시 루트 게임 오브젝트의 Transform 컴포넌트를 보정하려면 이 프로퍼티를 비활성화합니다. |
| Import BlendShapes | 이 프로퍼티를 활성화하면 Unity는 블렌드 셰이프를 메시와 함께 임포트합니다. 자세한 내용은 아래의 블렌드 셰이프 임포트를 참조하십시오. 참고: 블렌드 셰이프 노멀을 임포트하려면 FBX 파일에 스무딩 그룹이 필요합니다. |
| Import Visibility | MeshRenderer 컴포넌트의 활성화(가시성) 여부를 지정하는 FBX 설정을 임포트합니다. 자세한 내용은 아래 가시성 임포트를 참조하십시오. |
| Import Cameras | .FBX 파일에서 카메라를 임포트합니다. 자세한 내용은 아래 카메라 임포트를 참조하십시오. |
| Import Lights | .FBX 파일에서 광원을 임포트합니다. 자세한 내용은 아래 광원 임포트를 참조하십시오. |
| Preserve Hierarchy | 이 모델에 루트가 하나만 있는 경우에도 항상 명시적인 프리팹 루트를 생성합니다. 일반적으로 FBX 임포터는 최적화 방법의 하나로 빈 루트 노드를 모델에서 제거합니다. 하지만 동일한 계층 구조의 일부분이 포함된 FBX 파일이 여러 개인 경우 이 옵션을 사용하여 원래 계층 구조를 유지할 수 있습니다. 예를 들어 file1.fbx에 릭과 메시가 있고 file2.fbx에는 동일한 릭이 있지만 해당 릭의 애니메이션만 포함된 경우, 이 옵션을 사용 설정하지 않고 file2.fbx를 임포트하면 루트 노드가 제거되고, 계층 구조가 일치하지 않으며 애니메이션이 끊어집니다. |
| Sort Hierarchy By Name | 이 프로퍼티를 활성화하면 계층 구조 내에서 알파벳순으로 게임 오브젝트를 정렬합니다. 이 프로퍼티를 비활성화하면 FBX 파일에 정의된 계층 구조 순서를 유지합니다. |
Unity는 블렌드 셰이프(모핑)를 지원하며, 3D 모델링 애플리케이션에서 익스포트한 FBX 및 DAE 파일의 블렌드 셰이프를 임포트할 수 있습니다. 또한 FBX 파일에서 애니메이션도 임포트할 수 있습니다. Unity는 버텍스, 노멀 및 탄젠트의 블렌드 셰이프에 대해 버텍스 수준의 애니메이션을 지원합니다.
스킨 및 블렌드 셰이프는 메시에 동시에 영향을 줄 수 있습니다. Unity가 블렌드 셰이프가 포함된 메시를 임포트하면 스킨의 포함 여부와 관계없이 MeshRenderer 컴포넌트가 아니라 SkinnedMeshRenderer 컴포넌트를 사용합니다.
Unity는 일반 애니메이션의 일부로 블렌드 셰이프 애니메이션을 임포트하고, SkinnedMeshRenderers의 블렌드 셰이프 가중치를 애니메이션화합니다.
다음 중 하나의 방식으로 블렌드 셰이프를 노멀과 함께 임포트하십시오.
Unity가 FBX 파일의 노멀을 사용할 수 있도록 Blend Shape Normals 프로퍼티를 Import 로 설정하십시오. 자세한 내용은 아래의 블렌드 셰이프 노멀 프로퍼티에 대한 문서를 참조하시기 바랍니다.
또는
Blend Shape Normals 프로퍼티를 Calculate 로 설정하십시오. 그러면 Unity가 동일한 로직을 사용하여 메시와 블렌드 셰이프의 노멀을 계산합니다.
참고: 블렌드 셰이프에 대한 탄젠트가 필요한 경우 탄젠트 임포트 설정을 Calculate 로 설정하십시오.
Unity는 가시성 임포트(Import Visibility) 프로퍼티를 사용해 FBX 파일에서 가시성 프로퍼티를 읽어올 수 있습니다. 값과 애니메이션 커브로 Renderer.enabled 프로퍼티를 제어하여 MeshRenderer 컴포넌트를 활성화하거나 비활성화할 수 있습니다.
가시성 상속은 기본적으로 true지만 오버라이드할 수 있습니다. 예를 들어 부모 메시의 가시성을 0으로 설정하면 그 자식의 렌더러도 모두 비활성화됩니다. 이 경우 자식의 Renderer.enabled 프로퍼티마다 애니메이션 커브가 하나씩 생성됩니다.
일부 3D 모델링 애플리케이션은 가시성 프로퍼티를 지원하지 않거나 제한적으로 지원합니다. 자세한 내용은 다음을 참조하십시오.
Unity는 .FBX 파일에서 카메라를 임포트하는 경우 다음 프로퍼티를 지원합니다.
| 프로퍼티: | 기능: |
|---|---|
| Projection 모드 | 직교 또는 원근입니다. 애니메이션은 지원하지 않습니다. |
| Field of View | 애니메이션을 지원합니다. |
| 모든 Physical Camera 프로퍼티 | 물리 프로퍼티가 포함된 카메라(예: Maya 카메라)를 임포트하면 Unity는 Physical Camera 프로퍼티가 활성화되고 FBX 파일의 Focal Length, Sensor Type, Sensor Size, Lens Shift 및 Gate Fit 값을 포함한 카메라를 생성합니다. 참고: 일부 3D 모델링 애플리케이션은 Gate Fit 개념이 존재하지 않을 수 있습니다. 3D 모델링 애플리케이션에서 지원되지 않는 경우 Unity에서 기본 값이 None으로 설정됩니다. |
| Near/Far Clipping Plane 거리 | Unity는 이러한 프로퍼티에 대해 애니메이션을 임포트하지 않습니다. 3ds Max에서 익스포트하는 경우 Clip Manually 설정을 활성화하십시오. 그렇지 않으면 임포트 시에 기본값이 적용됩니다. |
| Target Cameras | 타겟 카메라를 임포트하면 Unity는 타겟 오브젝트를 소스로 사용하여 LookAt 제약이 포함된 카메라를 생성합니다. |
다음 광원 타입이 지원됩니다.
다음 광원 프로퍼티가 지원됩니다.
| 프로퍼티: | 기능: |
|---|---|
| Range | UseFarAttenuation 이 활성화된 경우 FarAttenuationEndValue 가 사용됩니다. FarAttenuationEndValue 는 애니메이션을 지원하지 않습니다. |
| Color | 애니메이션을 지원합니다. |
| Intensity | 애니메이션을 지원합니다. |
| Spot Angle | 애니메이션을 지원합니다.스폿 광원에만 사용할 수 있습니다. |
참고: 3ds Max에서 익스포트되는 기본값은 현재 선택된 프레임의 프로퍼티 값입니다. 혼동이 없도록 익스포트할 때 플레이헤드를 프레임 0으로 이동하십시오.
일부 3D 모델링 애플리케이션에서는 광원 프로퍼티에 스케일링을 적용합니다.예를 들어 스폿 광원을 계층별로 스케일링하고 광원 원뿔에 영향을 미칠 수 있습니다.Unity에서는 이렇게 하지 않으므로 광원이 Unity에서 다르게 보일 수 있습니다.
FBX 포맷을 사용하면 면 광원의 너비와 높이가 정의되지 않습니다. 일부 3D 모델링 애플리케이션에는 이 프로퍼티가 없으므로 스케일링을 사용하여 사각 영역 또는 디스크 영역만 정의할 수 있습니다. 그렇기 때문에 면 광원을 임포트할 때 광원의 크기는 항상 1입니다.
타겟 광원 애니메이션은 베이크된 경우를 제외하고 지원되지 않습니다.
| 프로퍼티 | 기능 | |
|---|---|---|
| Mesh Compression | 메시 파일 크기를 줄일 압축비 레벨을 설정합니다. 압축비를 높이면 메시 경계와 더 낮은 컴포넌트당 비트 뎁스를 사용해 메시 데이터를 압축하여 메시의 정밀도를 낮춥니다. 메시가 압축되지 않은 버전과 너무 다르게 보이지 않는 범위 내에서 압축비를 가능한 한 최고로 높이는 것이 가장 효과적입니다. 이는 게임 크기를 최적화하는 데 유용합니다. |
|
| Off | 압축을 사용하지 않습니다. | |
| 낮음 | 낮은 압축비를 사용합니다. | |
| 중간 | 중간 압축비를 사용합니다. | |
| 높음 | 높은 압축비를 사용합니다. | |
| Read/Write Enabled | 이 옵션을 활성화하면 Unity는 GPU가 접근 가능한 메모리에 메시 데이터를 업로드하지만, CPU가 접근 가능한 메모리에 보관하기도 합니다. 즉, Unity가 런타임 시점에 언제든지 메시 데이터에 액세스할 수 있고, 작업자는 스크립트를 통해 메시 데이터에 액세스할 수 있습니다. 메시를 절차적으로 생성하거나 메시의 일부 데이터를 복사하는 경우가 대표적인 예입니다. 이 옵션을 비활성화하면 Unity는 GPU가 접근 가능한 메모리에 메시 데이터를 업로드하고, CPU가 접근 가능한 메모리에서는 메시 데이터를 제거합니다. 기본적으로 이 옵션은 비활성화되어 있습니다. 대부분의 경우 런타임 메모리 사용량을 줄이려면 이 옵션을 비활성화해야 합니다. Read/Write Enabled 옵션의 활성화 시점에 관한 자세한 내용은 Mesh.isReadable을 참조하십시오. |
|
| Optimize Mesh | GPU 성능을 향상하기 위해 삼각형이 메시에 나열되는 순서를 결정합니다. | |
| Nothing | 최적화를 수행하지 않습니다. | |
| Everything | Unity가 폴리곤과 버텍스 모두에 대한 버텍스 및 인덱스 순서를 다시 지정하도록 허용합니다. 기본 옵션입니다. | |
| Polygon Order | 폴리곤의 순서를 다시 지정합니다. | |
| Vertex Order | 버텍스의 순서를 다시 지정합니다. | |
| Generate Colliders | 활성화하면 메시 콜라이더가 자동으로 연결된 메시가 임포트됩니다. 이는 환경 지오메트리에 충돌 메시를 빨리 생성하는 데 유용하지만 움직이는 지오메트리에는 지양해야 합니다. | |
| 프로퍼티 | 기능 | |
|---|---|---|
| Keep Quads | 이 옵션을 활성화하면 버텍스가 네 개인 폴리곤을 삼각형으로 전환하지 않습니다. 예를 들어 테셀레이션 셰이더를 사용하는 경우 사각형을 테셀레이션하면 폴리곤을 테셀레이션하는 것보다 효율적이므로 이 옵션을 사용 설정하는 것이 좋습니다. Unity는 모든 타입의 폴리곤(삼각형부터 N각형까지)을 임포트할 수 있습니다. 버텍스가 네 개보다 많은 폴리곤은 이 설정에 관계없이 항상 삼각형으로 전환됩니다. 하지만 메시에 사각형과 삼각형(또는 심각형으로 전환되는 N각형)이 있는 경우 Unity는 서브메시 두 개를 생성하여 사각형과 삼각형을 분리합니다. 각 서브메시에는 삼각형 또는 사각형만 포함됩니다. 팁: 3ds Max의 사각형을 Unity로 임포트하려면 편집 가능한 폴리곤으로 익스포트해야 합니다. |
|
| Weld Vertices | 공간에서 같은 포지션을 공유하는 버텍스를 결합합니다. 단, 이러한 버텍스는 UV, 노멀, 탄젠트와 버텍스 컬러 등 전체적으로 같은 프로퍼티를 공유해야 합니다. 그러면 전체 버텍스 수를 줄여서 메시의 버텍스 수를 최적화합니다. 이 옵션은 기본적으로 사용하도록 설정되어 있습니다. 경우에 따라 메시를 임포트할 때 이 최적화를 해제해야 할 수 있습니다. 예를 들어 메시에서 같은 포지션을 점유하는 중복 버텍스를 일부러 갖고 있는 경우 스크립팅을 사용하여 개별 버텍스 또는 삼각형 데이터를 읽거나 수정하는 편이 나을 수 있습니다. |
|
| Index Format | 메시 인덱스 버퍼의 크기를 정의합니다. 참고: 대역폭 및 메모리 스토리지 크기와 관련된 이유로 인해 일반적으로 16비트(16 bit) 인덱스를 기본으로 유지하고, 필요한 경우에만 자동(Auto) 옵션에서 사용하는 32비트(32 bit) 를 사용하는 것이 좋습니다. |
|
| Auto | 메시를 임포트할 때 Unity가 메시 버텍스 수에 따라 16비트 또는 32비트 인덱스 중 무엇을 사용할지 결정할 수 있습니다. 이는 Unity 2017.3 이상에서 에셋을 추가하는 기본 설정입니다. | |
| 16 bit | 메시를 임포트할 때 16비트 인덱스를 사용합니다. 메시가 상대적으로 크면 64k보다 작은 버텍스 청크로 분할됩니다. Unity 2017.2 이전 버전에서 만든 프로젝트의 기본 설정입니다. | |
| 32 bit | 메시를 임포트할 때 32비트 인덱스를 사용합니다. GPU 기반 렌더링 파이프라인을 (예를 들어 컴퓨트 셰이더 삼각형 컬링과 함께) 사용하는 경우 32비트 인덱스를 사용하면 모든 메시에 동일한 인덱스 포맷이 사용됩니다. 그러면 한 가지 포맷만 처리하면 되므로 셰이더가 덜 복잡해집니다. | |
| Legacy Blend Shape Normals | 이 옵션을 활성화하면 Smoothing Angle 값을 기반으로 노멀을 계산합니다. | |
| Normals | 노멀을 계산해야 하는지 여부와 그 방법을 정의합니다. 게임 크기 최적화에 유용합니다. | |
| Import | 파일에서 노멀을 임포트합니다. 이는 기본 옵션입니다. 파일에 노멀이 포함되어 있지 않을 경우 노멀이 계산됩니다. | |
| Calculate | Normals Mode, Smoothness Source 와 Smoothing Angle 에 기반하여 노멀을 계산합니다(아래). | |
| None | 노멀을 사용하지 않도록 설정합니다. 메시가 노멀 매핑되지 않고 실시간 조명에 영향을 받지 않는 경우 이 옵션을 사용합니다. | |
| Blend Shape Normals | Unity가 블렌드 셰이프의 노멀을 계산해야 하는지 여부와 방법을 정의합니다. 이 값은 Normals 프로퍼티의 값과 일치해야 합니다. 이 프로퍼티는 Legacy Blend Shape Normals 가 비활성화된 경우에만 표시됩니다. |
|
| Import | 파일에서 노멀을 임포트합니다. 블렌드 셰이프에 노멀이 없으면 FBX SDK는 자체 방식으로 노멀을 계산합니다. 이때 생성되는 노멀 값은 Unity가 Calculate 옵션으로 생성하는 노멀 값과 대개 다릅니다. | |
| Calculate | Normals Mode, Smoothness Source 와 Smoothing Angle 에 기반하여 노멀을 계산합니다(아래). | |
| None | 블렌드 셰이프 노멀은 기본 셰이프에 기여하지 않습니다. | |
| Normals Mode | Unity 에디터가 노멀을 계산되는 방법을 정의합니다. Normals 가 Calculate 또는 Import 로 설정되어 있을 때에만 사용할 수 있습니다. | |
| Unweighted Legacy | 노멀을 계산하는 레거시(2017.1보다 오래된 버전) 방법입니다. 경우에 따라 결과가 현재 구현에 비해 약간 다를 수 있습니다. 이는 프로젝트를 최신 Unity 버전으로 마이그레이션하기 전에 임포트된 모든 FBX 프리팹의 기본값입니다. | |
| Unweighted | 노멀에 가중치를 부여하지 않습니다. | |
| Area Weighted | 면 영역을 기준으로 노멀에 가중치를 부여합니다. | |
| Angle Weighted | 각 면의 버텍스 각도를 기준으로 노멀에 가중치를 부여합니다. | |
| Area and Angle Weighted | 면 영역과 각 면의 버텍스 각도를 모두 기준으로 노멀에 가중치를 부여합니다. 해당 옵션이 기본값입니다. | |
| Smoothness Source | 스무딩 동작 지정 방식을 설정(스무스 에지와 하드 에지 결정)합니다. 이 프로퍼티는 Legacy Blend Shape Normals 를 비활성화한 경우에만 표시됩니다. |
|
| Prefer Smoothing Groups | 가능한 경우 모델 파일의 스무딩 그룹을 사용합니다. | |
| From Smoothing Groups | 모델 파일의 스무딩 그룹만 사용합니다. | |
| From Angle | Smoothing Angle 값을 사용하여 스무스 에지를 결정합니다. | |
| None | 하드 에지의 버텍스는 분할하지 마십시오. | |
| Smoothing Angle | 하드 에지의 버텍스 분할 여부를 제어합니다. 일반적으로 값이 높을수록 버텍스가 적어집니다. 참고: 매우 부드러운 유기체나 폴리곤 수가 매우 많은 모델에만 이 설정을 사용하십시오. 그렇지 않으면 3D 모델링 소프트웨어 안에서 수동으로 스무딩을 적용한 다음 Normals 옵션을 Import 로 설정하여 임포트하는 편이 낫습니다(위 내용 참조). Unity에서 하드 에지는 각도 하나만 기반으로 삼기 때문에, 모델의 일부분에 스무딩이 실수로 적용될 수 있습니다. Normals 가 Calculate 로 설정된 경우에만 사용 가능합니다. |
|
| Tangents | 버텍스 탄젠트를 임포트하거나 계산할 방법을 정의합니다. Normals 가 Calculate 또는 Import 로 설정된 경우에만 사용 가능합니다. | |
| Import | Normals 가 Import 로 설정된 경우에만 FBX 파일에서 버텍스 탄젠트를 임포트합니다. 메시에 탄젠트가 없는 경우 노멀 매핑된 셰이더와 함께 사용할 수 없습니다. | |
| Calculate Tangent Space | MikkTSpace를 사용하여 탄젠트를 계산합니다. 이는 Normals 가 Calculate 로 설정된 경우 기본 옵션입니다. | |
| Calculate Legacy | 레거시 알고리즘을 사용하여 탄젠트를 계산합니다. | |
| Calculate Legacy - Split Tangent | 레거시 알고리즘을 사용해 탄젠트를 UV 차트 간에 분할하여 계산합니다. 이는 메시의 경계 부분으로 노멀 맵 조명이 구분되는 경우에 사용하며, 일반적으로 캐릭터에만 적용됩니다. | |
| None | 버텍스 탄젠트를 임포트하지 않습니다. 메시에는 탄젠트가 없으므로 노멀 매핑된 셰이더에 사용할 수 없습니다. | |
| Swap UVs | 메시의 UV 채널을 스왑합니다. 디퓨즈 텍스처에 라이트맵의 UV가 사용되는 경우 이 옵션을 사용합니다. Unity에서는 UV 채널을 최대 8개까지 지원하지만, 채널을 3개 넘게 익스포트하지 않는 3D 모델링 애플리케이션도 있습니다. | |
| Generate Lightmap UVs | 라이트매핑에 사용할 두 번째 UV 채널을 생성합니다. 자세한 내용은 라이트맵 UV 생성 문서를 참조하십시오. | |