Version: Unity 6.0 (6000.0)
언어 : 한국어
게임 오브젝트 애니메이션화
애니메이션 커브 편집

애니메이션 커브 사용

이 주제에서는 프로퍼티 리스트, 애니메이션 커브 및 해당 키, 키프레임 추가 및 수정, 회전 보간 유형에 대해 설명합니다.

프로퍼티 리스트

애니메이션 클립 에서 애니메이션화 프로퍼티에 애니메이션 커브 가 있으면 프로퍼티 값이 시간 경과에 따라 변경됩니다. Animation 뷰(왼쪽)의 프로퍼티 리스트 영역에 현재 애니메이션화된 모든 프로퍼티가 나열되어 있습니다. Dope Sheet 모드에서는 Animation 뷰에 각 프로퍼티의 애니메이션화 값이 선형 트랙으로만 표시되지만, Curves 모드에서는 프로퍼티의 변하는 값이 그래프에서 선으로 표시되는 것을 볼 수 있습니다. 사용하는 모드와 상관없이 커브는 여전히 존재합니다. Dope Sheet 모드는 키프레임이 발생하는 시점만 나타내는 간소화 데이터 뷰를 제공합니다.

Curves 모드에서는 애니메이션 커브 에 컬러 커브 표시기가 있습니다. 각 컬러는 프로퍼티 리스트에서 선택한 프로퍼티 중 하나를 나타냅니다. 애니메이션 프로퍼티에 커브를 추가하는 방법에 대한 자세한 내용은 Animation 뷰 사용 섹션을 참조하십시오.

컬러 표시기가 있는 애니메이션 커브. 이 예시에서 녹색 표시기는 바운싱 큐브 애니메이션의 Y 포지션 커브와 일치합니다.
컬러 표시기가 있는 애니메이션 커브. 이 예시에서 녹색 표시기는 바운싱 큐브 애니메이션의 Y 포지션 커브와 일치합니다.

커브, 키, 키프레임

애니메이션 커브 에는 커브가 통과하는 제어 지점인 여러 개의 가 있습니다. 이러한 키는 커브 에디터 에서 커브에 있는 작은 다이아몬드 모양으로 시각화됩니다. 표시된 커브에 하나 이상의 가 있는 프레임을 키프레임 이라고 합니다.

커브 에디터 는 선택한 프로퍼티에 대한 커브만 표시합니다. 프로퍼티 리스트에서 여러 프로퍼티를 선택한 경우 커브가 함께 표시됩니다. 현재 미리 보기 중인 프레임에서 프로퍼티에 가 있는 경우 커브 표시기가 다이아몬드 모양으로 변경됩니다.

선택한 여러 개의 프로퍼티에 대한 커브는 커브 에디터에서 서로 오버레이될 수 있습니다. Position.y 및 Scale.y 프로퍼티에는 현재 미리보기 중인 프레임에 키가 있습니다.
선택한 여러 개의 프로퍼티에 대한 커브는 커브 에디터에서 서로 오버레이될 수 있습니다. Position.yScale.y 프로퍼티에는 현재 미리보기 중인 프레임에 키가 있습니다.

키프레임 추가 및 수정

키프레임 버튼 을 클릭해서 현재 미리 보기 중인 프레임에 키프레임 을 추가할 수 있습니다.

키프레임 버튼 을 클릭해서 현재 미리 보기 중인 프레임에 키프레임 을 추가할 수 있습니다. 그러면 현재 선택한 모든 커브에 키프레임이 추가됩니다. 또는 새 키프레임 이 있는 커브를 더블 클릭하여 주어진 프레임의 단일 커브에 키프레임을 추가할 수도 있습니다. 키프레임 줄 을 오른쪽 클릭하고 컨텍스트 메뉴에서 Add Keyframe 을 선택하여 키프레임 을 추가할 수도 있습니다. 키프레임 을 추가한 후에는 마우스를 사용해 여기저기로 드래그할 수 있습니다. 키프레임 여러 개를 동시에 선택할 수도 있습니다. 키프레임 을 선택하고 Delete 키를 누르거나, 오른쪽 클릭하고 컨텍스트 메뉴에서 Delete Keyframe 을 선택하여 키프레임을 삭제할 수 있습니다.

애니메이션화 가능한 프로퍼티

Animation 뷰게임 오브젝트 의 위치, 회전, 확대/축소 이상으로 애니메이션화하는 데 사용할 수 있습니다. 모든 컴포넌트머티리얼 의 프로퍼티를 애니메이션화할 수 있으며, 스크립트 컴포넌트의 public 변수도 마찬가지입니다. 복잡한 시각 효과와 동작으로 애니메이션을 만들려면 관련 프로퍼티에 애니메이션 커브 를 추가하기만 하면 됩니다.

애니메이션 시스템에서는 다음 프로퍼티 유형을 지원합니다.

  • Float
  • Color
  • Vector2
  • Vector3
  • Vector4
  • Quaternion
  • Boolean

배열은 지원되지 않으며, 구조체 및 위에 나열된 것 이외의 오브젝트도 마찬가지입니다.

부울 프로퍼티에서 값이 0 이면 False 와 같으며 다른 모든 값은 True 와 같습니다.

다음은 Animation 뷰 를 사용할 수 있는 많은 작업 중 몇 가지 예시입니다.

  • LightColorIntensity 를 애니메이션화하여 깜박이거나 떨리게 만들 수 있습니다.
  • 반복 Audio SourcePitchVolume 을 애니메이션화하여 사운드 에셋의 용량을 최소화하면서 바람 부는 소리, 엔진 소리, 물 흐르는 소리를 재현할 수 있습니다.
  • MaterialTexture Offset 을 애니메이션화하여 벨트나 트랙의 움직임, 물의 흐름 또는 특수 효과를 시뮬레이션할 수 있습니다.
  • 여러 Ellipsoid Particle EmittersEmit 상태와 Velocities 를 애니메이션화하여 화려한 불꽃놀이나 분수를 생성할 수 있습니다.
  • 스크립트 컴포넌트의 변수를 애니메이션화하여 시간 경과에 따른 동작 변화를 구현할 수 있습니다.

애니메이션 커브 를 이용해 게임 로직을 조절하는 경우 Unity에서 재생 또는 샘플링하는 방식을 참조하십시오.

회전 보간 유형

Unity에서 회전은 내부적으로 쿼터니언 으로 표시됩니다. 쿼터니언은 일반적으로 정확히 알고 있는 사람 외에는 수동으로 수정해서는 안 되는 .x, .y, .z, .w 값으로 구성됩니다. 대신, 회전은 일반적으로 각 세 축 중심의 회전을 나타내는 .x, .y, .z 값을 가진 오일러 각 을 사용하여 조작됩니다.

두 회전 간 보간 시 보간은 쿼터니언 값 또는 오일러 각 값으로 수행될 수 있습니다. Animation 뷰 에서 트랜스폼 회전을 애니메이션화할 때 사용할 보간 형식을 선택할 수 있습니다. 그러나 어떤 보간 형식이 사용되든 상관없이 회전은 항상 오일러 각 값의 형태로 표시됩니다.

트랜스폼 회전은 오일러 각 보간 또는 쿼터니언 보간을 사용할 수 있습니다.
트랜스폼 회전은 오일러 각 보간 또는 쿼터니언 보간을 사용할 수 있습니다.

쿼터니언 보간

쿼터니언 보간은 항상 두 회전 사이의 가장 짧은 경로를 따라 회전의 자연스러운 변화를 생성합니다. 이렇게 하면 짐벌 락과 같은 회전 보간 결함이 발생하지 않습니다. 그러나 쿼터니언 보간은 항상 가장 짧은 경로를 찾는 동작으로 인해 180도보다 큰 회전을 나타낼 수 없습니다. (구체 표면에서 두 개의 점을 선택하면 두 점 사이의 가장 짧은 선이 구체의 절반을 초과하지 않는 것을 상상할 수 있음)

쿼터니언 보간을 사용해 180도 이상의 회전값을 설정한다면 Animation 창에 그려진 커브는 180도 이상인 것처럼 보이지만 오브젝트의 실제 회전은 최단 경로를 따릅니다.

쿼터니언 보간을 사용할 때 두 키를 270도 간격으로 배치하면 보간된 값이 반대 방향으로 90도만 이동합니다. 자홍색 커브는 Animation 창에 실제로 표시됩니다. 오브젝트의 true 보간은 이 스크린샷에서 노란색 점선으로 표시되지만, 에디터에는 실제로 표시되지 않습니다.
쿼터니언 보간을 사용할 때 두 키를 270도 간격으로 배치하면 보간된 값이 반대 방향으로 90도만 이동합니다. 자홍색 커브는 Animation 창에 실제로 표시됩니다. 오브젝트의 true 보간은 이 스크린샷에서 노란색 점선으로 표시되지만, 에디터에는 실제로 표시되지 않습니다.

회전을 위해 쿼터니언 보간을 사용하는 경우 x, y 또는 z 커브의 키나 탄젠트를 변경하면 세 커브가 모두 내부 쿼터니언 표현으로 생성되므로 나머지 두 커브의 값도 변경될 수 있습니다. 쿼터니언 보간을 사용하는 경우 키는 항상 연결되어 있으므로 특정 시점에 세 커브(x, y, z) 중 하나에 키를 생성하면 다른 두 커브에도 해당 시점에 키가 생성됩니다.

오일러 각 보간

오일러 각 보간은 대부분의 사람들이 익숙한 작업입니다. 오일러 각은 임의의 큰 회전을 나타내며 .x, .y, .z 커브는 서로 독립적입니다. 오일러 각 보간은 동시에 여러 축을 중심으로 회전할 때 짐벌 락과 같은 결함이 발생할 수 있지만 한 번에 한 축을 중심으로 하는 간단한 회전을 위해 직관적으로 사용할 수 있습니다. 오일러 각 보간을 사용하는 경우 Unity는 내부적으로 사용되는 쿼터니언 표현에 커브를 내부적으로 베이크합니다. 이는 외부 소프트웨어에서 애니메이션을 Unity로 임포트하는 경우와 유사합니다. 이 커브 베이킹은 프로세스에 추가 키를 추가할 수 있으며, Constant 탄젠트 유형의 탄젠트는 하위 프레임 수준에서 완전히 정확하지 않을 수 있습니다.

게임 오브젝트 애니메이션화
애니메이션 커브 편집