자, 아홉번째 키워드인 '키프레임 애니메이션'을 알아보겠다.

일단 키프레임이라는 것은 비디오 및 컴퓨터 그래픽 분야에서 중요한 역할을 하는 개념이다. 주로 애니메이션이나
비디오에서 사용되며, 전체 시퀀스의 시작과 끝에서 중요한 포즈나 모습을 나타내는 프레임을 말한다.
애니메이션의 경우, 키프레임은 애니메이션의 시작과 끝 지점, 그리고 중간에서의 주요 움직임의 모습을 정의한다고 한다.
그러나, 모든 프레임에 대해 자세하게 애니메이션을 그리는 것은 비효울적일 수 있으니 키프레임이 정의한 움직임 사이에
중간 프레임을 컴퓨터가 자동으로 생성하게 된다. 이를 보간이라고 한다.
컴퓨터 그래픽스에서는 키프레임이 애니메이션의 시작과 끝, 그리고 중간에 표현되는 모델의 변화를 나타낸다.
키프레임 애니메이션은 랜더링이 더 빠르고 메모리 사용이 적으며, 자연스러운 움직임을 구현할 수 있다고 한다.
자 두가지 분야에서 사용되는 개념인거 같은데 전공자의 맞게 컴퓨터 그래픽스에 접근하여 알아보겠다.
컴퓨터 그래픽스에서 키프레임은 오브젝트의 애니메이션과 모션 그래픽스에 주로 사용된다.
이것은 각 프레임에서 객체의 위치, 회전, 크기 등을 정의하는데 사용이 된다고 한다.
키프레임은 애니메이션의 시작과 끝, 그리고 중간에서 중요한 변화를 표현한다.
간단한 예시를 들어보면, 3D 오브젝트의 애니메이션을 달아준다고 가정해보자.
인간형 오브젝트의 팔을 움직인다고 하였을때, 이 움직임을 수행하기 위해 어떻게 회전하고
움직이는지 정의를 해야한다.
이를 위해 키프레임을 사용할 수 있다.
1. 첫 번째 키프레임 : 오브젝트 팔의 시작 위치의 회전을 정의
2. 두 번째 키프레임 : 오브젝트 팔이 특정 지점으로 회전하고 이동하는 모습을 정의
3. 세 번째 키프레임 : 오브젝트 팔이 최종 위치와 회전을 정의
위 처럼 키프레임을 설정하면 컴퓨터는 중간 프레임을 자동으로 생성하여 움직임을 부드럽게 보이도록 해준다.
이러한 방식으로 사용을 한다면 더 자연스러운 애니메이션을 만들 수 있다.
게임 개발 엔진인 Unity에서도 애니메이션을 다룰 수 있는데 다음과 같은 기능을 이용해 사용을 할 수 있다.

Animation 컴포넌트를 사용하면 개별 객체 또는 캐릭터의 애니메이션을 정의할 수 있다. 이를 위해 시작과 끝 키프레임을 설정하고 중간 키프레임에서 자동으로 보간되는 애니메이션 클립을 만들 수 있다.
Animator 컴포넌트를 사용하면 복잡한 애니메이션 상태 머신을 만들 수 있다. 각 상태는 특정 애니메이션 클립과 연결되며, 상태 전환을 통해 애니메이션을 제어할 수 있다. 이를 통해 게임 캐릭터의 상호작용 및 다양한 동작을 구현할 수 있다.
유니티의 키프레임 애니메이션 시스템을 사용하면 간단한 애니메이션부터 복잡한 동작까지 다양한 애니메이션을 만들고 제어할 수 있다. 이는 게임에서 캐릭터의 움직임, 물체의 동작, 카메라 애니메이션 등을 구현하는 데 유용하다고 한다.
선형 보간과 곡선 보간은 보간(interpolation)의 두 가지 주요 유형으로 나뉜다. 이 두 가지 방법은 시작점과 끝점 사이의 중간 값을 계산하는 방법에서 차이가 있다.
선형 보간은 가장 간단한 보간 방법 중 하나.
시작점과 끝점을 직선으로 연결하여 중간 값들을 생성한다.
시작점에서 끝점으로 이동할 때, 시간에 따라 일정한 속도로 움직인다. 이는 중간 프레임들이
균일하게 간격을 가지며, 선형적으로 이동함을 의미한다.
수학적으로는 시작점과 끝점 사이의 비율을 사용하여 중간값을 계산한다.
예를 들어, 시작점이 0이고 끝점이 10일 때, 중간값은 시간에 따라 0에서 10까지 선형적으로 증가한다.
곡선 보간은 시작점과 끝점을 부드러운 곡선으로 연결하여 중간 값을 계산한다.
곡선 보간은 시작점과 끝점 사이를 자연스럽고 부드럽게 연결하기 위해 사용된다.
이를 통해 애니메이션의 움직임이 더 자연스럽고 현실적으로 보인다.
다양한 곡선 형태를 사용할 수 있으며, 베지어 곡선(Bezier curve)이나 스플라인 곡선(spline curve) 등의 수학적 모델이 일반적으로 사용된다.
유니티를 공부하며 키프레임이라는 단어나 애니메이션은 익히 알고있었다. 많이 사용해 보았기 때문에.
이렇게 공부해보니 내가 알고 있는 것은 제대로 아는 것도 아니였다...
학문을 익히다보면 매번 새로운게 등장하는게 내가 어쩌면 제대로 공부를 안한게 아닌가 하며 살짝 자신한테 실망스럽다.
하지만 이렇게라도 새롭게 알게되고 지식 창고가 업데이트가 되면 나름 괜찮은 것 같다.