애니메이션
[Microsoft 에이전트는 Windows 7을 기준으로 더 이상 사용되지 않으며 이후 버전의 Windows에서는 사용할 수 없습니다.]
캐릭터의 애니메이션은 성별, 연령, 성격 및 동작을 반영합니다. 캐릭터에 대해 만드는 애니메이션의 수와 유형은 문자가 수행하는 작업과 다양한 상황에 어떻게 반응하는지에 따라 달라집니다.
기존 애니메이션과 마찬가지로 디지털 애니메이션은 순차적으로 표시될 때 동작의 환상을 제공하는 약간 다른 일련의 이미지를 만드는 것을 포함합니다. 고품질 애니메이션 이미지를 만들려면 숙련된 애니메이터가 필요할 수 있지만, 만드는 캐릭터의 스타일과 프레젠테이션도 품질에 영향을 줍니다. 간단한 셰이프와 기능이 있는 2차원 문자는 렌더링이 높은 문자만큼 효과적이거나 더 효과적일 수 있습니다. 효과적인 캐릭터를 묘사하기 위해 현실적인 이미지를 만들 필요는 없습니다. 많은 인기 만화 캐릭터는 프레젠테이션에서 현실적이지는 않습니다. 그러나 애니메이터가 행동과 감정을 전달하는 방법을 이해하기 때문에 효과적입니다. 부록은 기본 애니메이션 디자인 원칙에 대한 일반적인 정보를 제공합니다.
Microsoft 에이전트 문자에 대해 만드는 각 애니메이션은 시간 제한 프레임 시퀀스로 구성됩니다. 애니메이션의 각 프레임은 하나 이상의 비트맵 이미지로 구성됩니다. 이미지는 필요한 만큼 작거나 프레임 자체만큼 클 수 있습니다.
눈 깜박임 또는 손가락 움직임과 같은 애니메이션 세부 정보는 프레임에 대한 추가 이미지로 포함할 수 있습니다. 여러 이미지를 오버레이하여 복합 이미지를 만들고 레이어에서 위치를 변경할 수 있습니다. 이 기술을 사용하면 여러 프레임에서 이미지를 다시 사용하고 변경되는 세부 정보를 변경할 수 있습니다. 예를 들어 문자가 손을 흔들도록 하려는 경우 각 프레임에 대해 손을 제외한 모든 기본 이미지를 사용하고 다른 손 이미지로 기본 이미지를 오버레이할 수 있습니다. 마찬가지로 문자를 깜박이게 하려는 경우 각 프레임의 기본 이미지 위에 다른 눈 집합을 오버레이할 수 있습니다. 이미지는 기본 이미지에서 오프셋될 수도 있습니다. 그러나 프레임 크기 내에 있는 이미지의 일부만 표시됩니다.
애니메이션에 원하는 만큼 프레임을 사용할 수 있습니다. 그러나 일반적인 애니메이션은 평균 약 14프레임을 사용하므로 6초 이상 재생되지 않습니다. 이 적당한 시간은 문자가 사용자 입력에 응답하는 것처럼 보이도록 합니다. 또한 프레임 수가 클수록 애니메이션 파일이 커지게 됩니다. 다운로드한 웹 기반 문자의 경우 애니메이션 파일의 크기를 가능한 한 작게 유지하면서 적절한 크기의 프레임 집합을 제공하므로 캐릭터의 애니메이션이 육포처럼 보이지 않도록 합니다.
최종 이미지를 Windows 비트맵(.BMP) 형식으로 저장하는 경우 그래픽 또는 애니메이션 도구를 사용하여 애니메이션 프레임에 대한 이미지를 만들 수 있습니다. 이미지를 만들 때 Microsoft 에이전트 문자 편집기를 사용하여 이미지를 어셈블, 시퀀스 및 시간 지정하고, 다른 문자 정보를 제공하고, 모든 정보를 최종 문자 파일로 컴파일합니다.
문자 이미지는 색상표의 표준 위치(처음 10개 및 마지막 10개 위치)에서 20개의 표준 Windows 시스템 색을 유지하면서 256색 색상표로 디자인되어야 합니다. 즉, 캐릭터의 색상표는 표준 시스템 색과 최대 236가지 다른 색을 사용할 수 있습니다. 팔레트를 정의할 때 애니메이션에 캐릭터가 사용하는 모든 소품을 포함합니다. 문자의 색상표가 시스템 색 위치에 색을 배치하는 경우 Microsoft 에이전트가 색상표를 만들 때 해당 문자 색을 시스템 색으로 덮어씁니다.
문자의 색상표에 사용하는 색 수가 클수록 8비트(256) 색 설정으로 구성된 시스템에 대해 문자 색의 일부가 다시 매핑되었을 가능성이 커집니다. 문자를 사용할 애플리케이션의 색상표 사용도 고려합니다. 문자가 호스트 애플리케이션의 색을 다시 매핑하고 그 반대의 경우도 마찬가지입니다. 마찬가지로 동시에 표시되는 여러 문자를 지원하려는 경우 해당 문자에 대해 일관된 팔레트를 유지 관리하려고 할 수 있습니다. 8비트 색 구성을 사용하여 사용자를 대상으로 하는 경우 문자의 표준 시스템 색만 사용하는 것이 좋습니다. 그러나 다른 응용 프로그램이 색상표를 광범위하게 재정의하는 경우에도 캐릭터의 색을 다시 매핑하는 것을 방지할 수 없습니다. 시스템에서 더 높은 색 해상도로 설정된 경우 시스템에서 색상표를 자동으로 관리하므로 색상표 다시 매핑은 문제가 되지 않습니다.
이미지에서 더 많은 수의 색을 사용하면 애니메이션 파일의 전체 크기를 늘릴 수도 있습니다. 색 수와 변형 빈도에 따라 문자 파일이 압축되는 정도가 결정됩니다. 예를 들어 몇 가지 색만 사용하는 2차원 문자는 음영 처리된 3차원 문자보다 더 잘 압축됩니다.
전체 문자 파일에 대해 동일한 색 팔레트를 사용해야 합니다. 다른 애니메이션의 색상표를 변경할 수 없습니다. 8비트 색 구성을 지원하려는 경우 애플리케이션 및 지원하려는 다른 문자에 동일한 팔레트를 사용하는 것이 좋습니다.
색상표의 11번째 위치는 기본적으로 투명도(또는 알파) 색으로 정의되지만 Microsoft 에이전트 문자 편집기를 사용하여 색을 설정할 수도 있습니다. Microsoft 에이전트 애니메이션 서비스는 이 색의 픽셀을 투명하게 렌더링하므로 투명도를 원하는 경우에만 이미지의 색을 사용합니다.
애니메이션 성능에 영향을 줄 수 있으므로 캐릭터의 모양을 신중하게 고려합니다. 문자를 표시하기 위해 애니메이션 서비스는 전체 이미지에 따라 영역 창을 만듭니다. 불규칙한 영역이 작으면 더 많은 지역 데이터가 필요하고 캐릭터의 애니메이션 성능이 저하되는 경우가 많습니다. 따라서 가능하면 간격 또는 단일 픽셀 요소 및 세부 정보를 방지합니다.
문자의 바깥쪽 가장자리를 앤티앨리어싱하지 않도록 합니다. 앤티앨리어싱은 들쭉날쭉한 가장자리를 줄이는 좋은 기술이지만 인접한 색을 기반으로 합니다. 문자가 다양한 색 위에 나타날 수 있으므로 바깥쪽 가장자리를 앤티앨리어싱하면 다른 배경에 대해 문자가 제대로 표시되지 않을 수 있습니다. 그러나 이 문제가 발생하지 않고 문자의 내부 세부 정보에서 앤티앨리어싱을 사용할 수 있습니다.
프레임 크기는 일반적으로 128 x 128 픽셀보다 크지 않아야 합니다. 문자는 두 차원에서 더 크거나 작을 수 있지만 Microsoft 에이전트 문자 편집기는 이를 표시 크기로 사용하고 더 큰 프레임 크기를 정의하는 경우 문자 이미지의 크기를 조정합니다. 128 x 128 프레임 크기는 캐릭터가 화면에서 차지할 공간과 적절한 장단점이 됩니다. 애플리케이션은 런타임에 문자를 확장할 수 있습니다.
Microsoft 에이전트 문자 편집기를 사용하여 애니메이션의 각 프레임이 다음 프레임으로 이동하기 전에 표시되는 기간을 설정할 수 있습니다. 각 프레임의 기간을 최소 1000초(초당 10프레임)로 설정합니다. 일부 시스템에서는 덜 인식할 수 없습니다. 기간을 더 길게 설정할 수도 있지만 작업에서 부자연스러운 일시 중지를 방지할 수도 있습니다.
Microsoft 에이전트 문자 편집기에서는 사용자가 제공하는 확률 백분율에 따라 애니메이션의 한 프레임에서 다른 프레임으로의 분기도 지원합니다. 지정된 프레임에 대해 최대 세 개의 다른 분기를 정의할 수 있습니다. 분기를 사용하면 재생될 때 다양한 애니메이션과 반복되는 애니메이션을 만들 수 있습니다. 그러나 분기를 사용할 때는 애니메이션을 하나씩 재생하려고 할 때 문제가 발생할 수 있으므로 주의해야 합니다. 예를 들어 루핑 또는 분기 애니메이션을 재생하는 경우 Stop 메서드를 사용하지 않는 한 무한정 계속될 수 있습니다. 확실하지 않은 경우 분기를 피하세요.
이미지가 없고 기간이 0으로 설정된 프레임은 애니메이션에 포함될 때 표시되지 않습니다. 이 기능을 사용하여 표시되지 않고 분기를 지원하는 프레임을 만들 수 있습니다. 그러나 이미지가 아직 0보다 큰 기간이 없는 프레임이 표시됩니다. 따라서 사용자가 빈 프레임을 문자가 숨겨져 있을 때와 구분하지 못할 수 있으므로 애니메이션에 빈 프레임을 포함하지 마세요.
애니메이션을 디자인할 때 애니메이션에서 애니메이션으로 원활하게 전환하는 방법을 고려합니다. 예를 들어 문자 제스처가 오른쪽에 있는 애니메이션과 문자 제스처가 남아 있는 애니메이션을 만드는 경우 문자가 한 위치에서 다른 위치로 원활하게 애니메이션 효과를 주도록 합니다. 두 애니메이션 중 하나로 빌드할 수 있지만 더 나은 솔루션은 문자가 시작되고 반환되는 중립 또는 전환 위치를 정의하는 것입니다. 중립 위치에 애니메이션 효과를 주는 것은 각 애니메이션의 일부 또는 별도의 애니메이션으로 통합될 수 있습니다. Microsoft 에이전트 문자 편집기에서 문자에 대한 각 애니메이션에 대한 보완 반환 애니메이션을 지정할 수 있습니다. 반환 애니메이션은 일반적으로 문자가 중립 위치로 빠르게 전환할 수 있도록 2~4프레임 이하여야 합니다.
예를 들어 "오른쪽 몸짓, 왼쪽 몸짓" 시나리오를 사용하여 문자가 중립 위치에 나타나는 프레임부터 시작하여 GestureRight 애니메이션을 만들고 문자의 손을 오른쪽으로 확장하는 이미지가 있는 프레임을 추가할 수 있습니다. 그런 다음 반환 애니메이션: 문자를 중립 위치로 반환하는 이미지가 있는 보완 애니메이션을 만듭니다. 이를 GestureRight 애니메이션의 반환 애니메이션으로 할당할 수 있습니다. 다음으로 중립 위치에서 시작하여 문자의 팔을 왼쪽으로 확장하는 GestureLeft 애니메이션을 만듭니다. 마지막으로 이 애니메이션에 대한 보완 반환 애니메이션도 만듭니다. 반환 애니메이션은 일반적으로 이전 애니메이션의 마지막 이미지를 따르는 이미지로 시작합니다.
애니메이션 내에서 또는 반환 애니메이션을 사용하여 동일한 중립 위치로 시작하고 반환하면 모든 애니메이션을 순서대로 재생할 수 있습니다. Microsoft 에이전트 애니메이션 서비스는 여러 상황에서 지정된 반환 애니메이션을 자동으로 재생합니다. 예를 들어 서비스는 캐릭터의 유휴 상태 애니메이션을 재생하기 전에 지정된 반환 애니메이션을 재생합니다. 애니메이션이 중립 위치에서 아직 끝나지 않은 경우 반환 애니메이션을 정의하고 할당하는 것이 좋습니다.
특정 애니메이션 간에 고유한 전환을 제공하려는 경우 예를 들어 항상 잘 정의된 순서로 재생하므로 반환 애니메이션을 정의하지 않아도 됩니다. 그러나 중립 위치에서 애니메이션 시퀀스를 시작하고 종료하는 것이 좋습니다.
캐릭터의 디자인에 애니메이션 입이나 음성 출력 표시가 없는 한 캐릭터가 말할 수 있게 하려는 각 애니메이션에 대한 입 이미지를 제공합니다. 일반적으로 입의 움직임은 매우 중요합니다. 입의 움직임이 음성과 합리적으로 동기화되지 않으면 캐릭터가 덜 지능적이거나, 좋아하거나, 정직하게 보일 수 있습니다. 입 이미지를 사용하면 문자가 음성 출력에 립싱크할 수 있습니다. 입 이미지를 별도로 정의하고 Windows 비트맵 파일로 정의합니다. 애니메이션의 다른 이미지와 동일한 색상표와 일치해야 합니다.
Microsoft 에이전트 애니메이션 서비스는 애니메이션의 말하기 프레임이라고도 하는 애니메이션의 마지막 프레임 위에 입 애니메이션 프레임 을 표시합니다. 예를 들어 문자가 GestureRight 애니메이션에서 말하는 경우 애니메이션 서비스는 GestureRight의 마지막 프레임에 입 애니메이션 프레임을 오버레이합니다. 애니메이션 효과를 주는 동안 문자는 말할 수 없으므로 애니메이션의 마지막 프레임에 대해서만 입 이미지를 제공합니다. 또한 말하기 프레임은 애니메이션의 끝 프레임이어야 하므로 문자가 루핑 애니메이션에서 말할 수 없습니다.
일반적으로 입 이미지를 프레임(및 기본 이미지)과 동일한 크기로 제공하지만 입 이동의 일부로 애니메이션 효과를 주는 영역만 포함하고 나머지 이미지는 투명한 색으로 렌더링합니다. 위에 오버레이할 때 말하는 프레임의 이미지와 일치하게 이미지를 디자인합니다. 올바르게 일치하려면 문자가 말하는 모든 애니메이션에 대해 별도의 입 이미지 집합을 만들어야 할 수 있습니다.
입 이미지는 말하는 동안 턱이나 캐릭터의 신체의 다른 부분과 같은 입 자체 이상을 포함 할 수 있습니다. 그러나 손이나 다리를 이동하는 경우 표시되는 입 오버레이가 음성 구의 현재 음소에 기반하기 때문에 임의로 이동하는 것처럼 보일 수 있습니다. 또한 서버는 입 이미지를 말하는 프레임 이미지의 윤곽선으로 클리핑합니다. 서버에서 기본 이미지를 사용하여 문자의 창 경계를 만들기 때문에 기본 말하기 프레임 이미지의 윤곽선 내에 유지되도록 입 오버레이 이미지를 디자인합니다.
Microsoft 에이전트 문자 편집기를 사용하면 다음 표에 표시된 일반적인 음소 입 모양에 해당하는 7개의 기본 입 위치를 정의할 수 있습니다.
입 애니메이션 이미지
입 위치 | 샘플 이미지 | 표현 |
---|---|---|
종결 |
|
보통 입이 닫힌 모양입니다. 또한 "엄마"에서와 같이 "m", "b"와 같은 음소에 "bob", "f"와 같이 "fife"에 사용됩니다. |
오픈 와이드 1 |
|
입이 약간 열려 있으며 전체 너비입니다. "개그"에서와 같이 "g", "l"과 같은 음소에 "lull", "귀"와 같이 "듣기"에 사용됩니다. |
오픈 와이드 2 |
|
입이 부분적으로 열려 있으며 전체 너비입니다. "수녀"와 같은 "n", "아빠"에서와 같이 "d", "t"와 같은 음소에 사용됩니다. |
오픈 와이드 3 |
|
입이 꽉 찼습니다. "오두막"과 같은 "u", "머리"와 같이 "ea", "상처"와 같은 음소에 사용됩니다. |
오픈 와이드 4 |
|
입이 완전히 열려 있으며 전체 너비입니다. "a"와 같은 음소에 "hat", "ow"와 같이 "how"에 사용됩니다. |
Open-medium |
|
입이 반 너비로 열립니다. "ahoy", "o"와 같이 "핫"과 같은 음소에 사용됩니다. |
여는 범위 |
|
입이 좁은 너비로 열립니다. "후프"에서와 같이 "o", "o"와 같은 음소에 "희망", "w"와 같이 "젖은"에 사용됩니다. |