애니메이션 클립 은 Unity에서 가장 작은 애니메이션 블록입니다. 왼쪽 달리기(RunLeft), 점프(Jump) 또는 기어가기(Crawl) 등 각각의 독립적인 모션을 의미하며 다양한 방법으로 조작하고 통합하여 실감 나는 애니메이션 결과물을 얻을 수 있습니다. 애니메이션 상태 머신, 애니메이터 컨트롤러, 블렌드 트리를 참조하십시오. 임포트한 FBX 데이터에서 애니메이션 클립을 선택할 수 있습니다.
애니메이션 클립이 포함된 모델을 클릭하면 다음의 프로퍼티가 나타납니다.
There are five areas on the Animation tab of the Inspector window:
(A) 에셋별 프로퍼티. 이 설정은 전체 에셋의 임포트 옵션을 정의합니다.
(B) 클립 선택 리스트. 이 리스트에서 항목을 선택하여 해당 프로퍼티를 표시하고 애니메이션을 미리 볼 수 있습니다. 새 클립 정의도 가능합니다.
(C) 클립별 프로퍼티. 이 설정은 선택한 Animation Clip 에 대한 임포트 옵션을 정의합니다.
(D) Clip properties. These settings define import options for all Animation clips.
(E) Animation preview. You can playback the animation and select specific frames here.
이 프로퍼티는 에셋 내에서 정의되는 모든 애니메이션 클립과 제약 사항에 적용됩니다.
프로퍼티: | 기능: | |
---|---|---|
Import Constraints | 이 에셋에서 제약을 임포트합니다. | |
Import Animation | 이 에셋에서 애니메이션을 임포트합니다. 참고: 비활성화하면 페이지의 모든 다른 옵션을 숨기고 애니메이션을 임포트하지 않습니다. |
|
Bake Animations | IK 또는 시뮬레이션을 사용하여 생성된 애니메이션을 순운동학(FK) 키프레임으로 베이크합니다. 이 옵션은 Autodesk® Maya®, Autodesk® 3ds Max® 및 Cinema 4D 파일에서만 사용 가능합니다. |
|
Resample Curves | Resample animation curves as Quaternion values and generate a new Quaternion keyframe for every frame in the animation. This option only appears if the import file contains Euler curves. This option is enabled by default. Disable this option to keep animation curves as they were originally authored. You should only disable this option if there are interpolation issues in the resampled animation when compared with your original animation. |
|
Anim. Compression | 애니메이션을 임포트할 때 사용하는 압축 타입입니다. | |
Off | 애니메이션 압축을 사용하지 않습니다. 즉, Unity가 임포트할 때 키프레임 수를 줄이지 않습니다. 애니메이션 압축을 비활성화하면 고정밀도 애니메이션이 되지만, 성능이 떨어지고 파일과 런타임 메모리 크기가 커집니다. 일반적으로 이 옵션을 사용하는 것은 좋지 않습니다. 고정밀 애니메이션이 필요한 경우 키프레임 축소를 사용하고 대신 Animation Compression Error 값을 허용하는 것이 좋습니다. | |
Keyframe Reduction | Reduce redundant keyframes on import. If enabled, the Inspector displays Animation Compression Errors options. This affects both file size (runtime memory) and how curves are evaluated. Applies to Legacy, Generic, and Humanoid Animation Type rigs. |
|
Keyframe Reduction and Compression | 임포트할 때 키프레임을 줄이고 애니메이션을 파일에 저장할 때 키프레임을 압축합니다. 이는 파일 크기에만 영향을 미치며 런타임 메모리 크기는 Keyframe Reduction 과 동일합니다. 이 옵션을 활성화하면 인스펙터에 Animation Compression Error 옵션이 표시됩니다. Legacy 애니메이션 타입 릭에만 사용할 수 있습니다. |
|
Optimal | Unity가 키프레임 감소 또는 고밀도 포맷 사용 중에서 압축 방식을 결정합니다. 이 옵션을 활성화하면 인스펙터에 Animation Compression Error 옵션이 표시됩니다. Generic 및 Humanoid 애니메이션 타입 릭에만 사용할 수 있습니다. |
|
Animation Compression Errors | Keyframe Reduction 또는 Optimal 압축이 활성화된 경우에만 사용할 수 있습니다. | |
Rotation Error | 회전 커브 압축에 대한 오류 허용치(각도)를 설정합니다. Unity는 이 값을 사용하여 회전 커브의 키를 제거할지 결정합니다. 이 값은 원래 회전 값과 감소된 값 사이의 최소 각도를 나타냅니다. Angle(value, reduced) < RotationError
|
|
Position Error | 포지션 커브 압축에 대한 오류 허용치(백분율)를 설정합니다. Unity는 이 값을 사용하여 포지션 커브의 키를 제거할지 결정합니다. 자세한 내용은 포지션 및 스케일 커브의 키 감소에 대한 오류 허용치 설정을 참조하십시오. | |
Scale Error | 스케일 커브 압축에 대한 오류 허용치(백분율)를 설정합니다. Unity는 이 값을 사용하여 스케일 커브의 키를 제거할지 결정합니다. 자세한 내용은 포지션 및 스케일 커브의 키 감소에 대한 오류 허용치 설정을 참조하십시오. | |
Animated Custom Properties | 커스텀 사용자 프로퍼티로 지정한 FBX 프로퍼티를 임포트합니다. Unity는 FBX 파일을 임포트할 때 소수의 프로퍼티(예: 이동, 회전, 스케일, 가시성) 서브셋만 지원합니다. 하지만 extraUserProperties 멤버를 통해 임포터 스크립트에서 이름을 지정하면 스탠다드 FBX 프로퍼티를 사용자 프로퍼티처럼 사용할 수 있습니다. 그러면 임포트하는 동안 Unity는 ‘실제’ 사용자 프로퍼티와 마찬가지로 모든 명명된 프로퍼티를 에셋 포스트프로세서에 전달합니다. |
Unity가 애니메이션 압축 전략의 일환으로 포지션 또는 스케일 커브의 키를 제거할지 여부를 결정할 수 있도록 오류 허용치 백분율을 설정합니다.
Anim. Compression 프로퍼티를 “Keyframe Reduction” 또는 “Optimal”로 설정하면 Unity는 원본 커브를 특정 키프레임 제거 후의 커브와 비교한 후 다음 테스트를 적용합니다.
OriginalValue - ReducedValue > OriginalValue * percentageOfError
원본 값과 감소된 값 사이의 델타가 원본 값에 오류 허용치 백분율을 곱한 값보다 작으면 Unity는 키프레임을 제거합니다.
단, Unity는 세 개의 커브 컴포넌트 간 거리(즉 distance(x,y,z)
)와 각 컴포넌트(distance(x)
, distance(y)
, distance(z)
) 간의 거리를 비교합니다.
이 예제는 Unity가 오류 허용치 10%를 사용하여 y축의 감소를 평가하는 방식을 보여줍니다.
키프레임 A의 값은 11.2입니다.
키프레임 B의 값은 11.1입니다.
최종적으로 감소된 커브의 모습은 다음과 같습니다.
키프레임 A가 감소하지 않으며 그 이유는 다음과 같습니다.
D = 11.2 - 10 = 1.2
입니다.E = 10% * 11.2 = 1.12
입니다.키프레임 B가 감소하며 11.1 - 10 < 10% * 11.1`이기 때문입니다.
D = 11.1 - 10 = 1.11
입니다.E = 10% * 11.1 = 1.11
입니다.이 방식은 차이가 별로 없는 높은 값을 사용할 경우에는 제한이 있습니다. 씬을 1000 단위로 이동하면 기본적으로 애니메이션은 동일하지만 0에서 매우 멀리 위치하게 됩니다.
이 경우 두 키프레임이 모두 감소합니다.
키프레임 A가 감소하며 그 이유는 다음과 같습니다.
D = 1011.2 - 1010 = 1.2
입니다.E = 10% * 1011.2 = 101.12
입니다.키프레임 B가 감소하며 11.1 - 10 < 10% * 11.1`이기 때문입니다.
D = 11.1 - 10 = 1.11
입니다.E = 10% * 1011.1 = 101.11
입니다.높은 값은 키프레임을 감소된 커브로 유지하기 위해 원본 값과 감소된 값 간에 훨씬 더 큰 차이를 필요로 합니다. 키프레임 A는 값이 1100이고 삭제되었지만, 키프레임 B는 값이 1112이고 유지되었습니다.
Animation 탭의 이 영역에서 다음과 같은 작업을 수행할 수 있습니다.
+
) 버튼을 사용하여 이 파일에 대한 새 클립을 생성합니다.-
) 버튼을 사용하여 선택한 클립 정의를 제거합니다.경고: 가져온 클립의 프로퍼티를 수동으로 변경하는 경우 Unity는 소스 에셋이 변경될 때 새 애니메이션 클립을 임포트하지 않습니다. 예를 들어 Animation 탭에서 새 클립을 만들거나 클립의 타이밍을 변경하면, Unity 외부의 FBX 파일에 클립을 추가하더라도 해당 클립 리스트는 변경되지 않습니다. Unity는 새 애니메이션 클립을 무시합니다.
Animation 탭의 이 영역에 다음과 같은 기능이 표시됩니다.
(A) The editable name of the selected clip.
(B) The animation clip timeline.
(C) Clip properties to control looping, root motion extraction, curves, events and Avatar masks.
이 에셋 내에서 정의된 각 애니메이션 클립에 대해 이러한 프로퍼티를 별도로 설정할 수 있습니다.
프로퍼티: | 기능: | |
---|---|---|
Area A | ||
Take name |
The name of the source take in the source file. Source files contain a set of source takes that are created in external 3D applications such as Motionbuilder or Autodesk® Maya®. You can import source takes as individual Animation clips. You can also create Animation clips from a subset of frames. |
|
Area B | ||
Drag the start and end indicators on the animation timeline to define frame ranges for each clip. Creating clips is essentially defining the start and end points for segments of animation. To define a looping clip, trim the start and end points so that the first and last frames match as best as possible. You can also zoom and scroll the timeline to be more precise. |
||
Start | 클립의 시작 프레임. | |
End | 클립의 종료 프레임. | |
Area C | ||
Loop Time | 애니메이션 클립을 끝까지 재생하고, 끝에 도달하면 다시 재생을 시작합니다. | |
Loop Pose | 모션을 자연스럽게 반복합니다. | |
Cycle Offset | 반복 재생 애니메이션의 사이클 오프셋입니다. 애니메이션이 다른 시간에 시작하는 경우에 설정합니다. | |
Root Transform Rotation | ||
Bake into Pose | 루트 회전을 뼈대의 움직임에 베이크합니다. 루트 모션으로 저장하려면 비활성화해야 합니다. | |
Based Upon | 기본 루트 회전입니다. | |
Original | 소스 파일의 원래 회전을 유지합니다. | |
Root Node Rotation | 루트 노드의 회전을 사용합니다. Generic 애니메이션 타입에만 사용할 수 있습니다. |
|
Body Orientation | 상체를 앞으로 향하게 합니다. Humanoid 애니메이션 타입에만 사용할 수 있습니다. |
|
Offset | 루트 회전에 대한 오프셋입니다(각도). | |
Root Transform Position (Y) | ||
Bake into Pose | 수직 루트 모션을 뼈대의 움직임에 베이크합니다. 루트 모션으로 저장하려면 비활성화해야 합니다. | |
Based Upon (at Start) | 기본 수직 루트 포지션입니다. | |
Original | 소스 파일의 수직 포지션을 유지합니다. | |
Root Node Position | 수직 루트 포지션을 사용합니다. Generic 애니메이션 타입에만 사용할 수 있습니다. |
|
Center of Mass | 질량 중심을 루트 트랜스폼 포지션과 맞춥니다. Humanoid 애니메이션 타입에만 사용할 수 있습니다. |
|
Feet | 발을 루트 트랜스폼 포지션과 맞춥니다. Humanoid 애니메이션 타입에만 사용할 수 있습니다. |
|
Offset | 수직 루트 포지션에 대한 오프셋입니다. | |
Root Transform Position (XZ) | ||
Bake into Pose | 수평 루트 모션을 뼈대의 움직임에 베이크합니다. 루트 모션으로 저장하려면 비활성화해야 합니다. | |
Based Upon | 기본 수평 루트 포지션입니다. | |
Original | 소스 파일의 수평 포지션을 유지합니다. | |
Root Node Position | 수평 루트 트랜스폼 포지션을 사용합니다. Generic 애니메이션 타입에만 사용할 수 있습니다. |
|
Center of Mass | 루트 트랜스폼 포지션과 맞춥니다. Humanoid 애니메이션 타입에만 사용할 수 있습니다. |
|
Offset | 수평 루트 포지션에 오프셋. | |
Mirror | 이 클립의 좌우를 반전합니다. 애니메이션 타입이 Humanoid 로 설정된 경우에만 표시됩니다. |
|
Additive Reference Pose | 활성화하면 애디티브 애니메이션 레이어에 기본으로 사용할 레퍼런스 포즈의 프레임을 설정합니다. 타임라인 에디터에 파란색 마커가 표시됩니다. |
|
Pose Frame | 레퍼런스 포즈로 사용할 프레임 수를 입력합니다. 타임라인의 파란색 마커를 드래그하여 이 값을 업데이트할 수도 있습니다. Additive Reference Pose 가 활성화된 경우에만 사용할 수 있습니다. |
|
Curves | Expand this section to manage animation curves for this animation clip. | |
Events | Expand this section to manage animation events for this animation clip. | |
Mask | Expand this section to manage Avatar masking for this animation clip. |
These expandable properties apply to all Animation clips being imported.
프로퍼티: | 기능: |
---|---|
Motion | Expand this section to manage the root motion node for all imported clips. |
Import Messages | 이 섹션을 확장하면 Retargeting Quality Report 옵션을 포함하여 애니메이션이 임포트된 방식에 대한 정보를 자세히 볼 수 있습니다. |
애니메이션 임포트 프로세스에서 문제가 발생하면 애니메이션 임포트 인스펙터 상단에 경고가 나타납니다.
경고 표시가 애니메이션이 임포트되지 않았거나 동작하지 않는다는 것을 의미하지는 않습니다. 다만, 임포트한 애니메이션이 소스 애니메이션과 약간 다르게 보일 수 있습니다.
자세한 내용을 보려면 Import Messages 섹션을 확장하십시오.
이 경우 Unity는 Generate Retargeting Quality Report 옵션을 제공했습니다. 이 옵션을 활성화하면 리타게팅 문제에 대한 자세한 내용을 확인할 수 있습니다.
그 외에 다음과 같은 경고 세부 정보가 표시될 수 있습니다.
위의 경고 메시지는 Unity가 애니메이션을 내부 포맷으로 임포트하거나 변환할 때 원본 파일에 있는 데이터 일부를 누락했다는 의미입니다. 이와 같은 경고는 리타게팅된 애니메이션이 소스 애니메이션과 정확하게 일치하지 않을 수도 있다는 것을 의미합니다.
참고: Unity는 constant 이외에 다른 사전 및 사후 외삽 모드(사전 및 사후 인피니티 모드라고도 불림)를 지원하지 않으며, 임포트 시 해당 모드를 constant로 전환합니다.
Animation 탭의 미리보기 영역에 다음과 같은 기능이 제공됩니다.
(A) The name of the selected clip.
(B) The 2D preview mode button (switches between orthographic and perspective camera).
(C) The pivot and mass center display button (switches between displaying and hiding the gizmos).
(D) The Avatar selector (change which GameObject will preview the action).
(E) The play/pause button.
(F) The playback head on the preview timeline (allows scrubbing back and forth).
(G) The animation preview speed slider (move left to slow down; right to speed up).
(H) The playback status indicator (displays the location of the playback in seconds, percentage, and frame number).
(I) The Tag bar, where you can define and apply Tags to your clip.
(J) The AssetBundles bar, where you can define AssetBundles and Variants.
AnimationClip