코어 애니메이션

코어 애니메이션(Core Animation)은 맥 오에스 텐 v10.5가 사용하는 데이터 시각화 API이며, 동화상 사용자 인터페이스를 만들어 낸다.

개요 편집

코어 애니메이션은 명확한 애니메이션 방법(Explicit Animation)과 함께 함축적 애니메이션(Implicit Animation) 방법을 사용한다. 이를 통해 개발자는 다양한 애니메이션이 적용된 사용자 인터페이스를 만들 수 있는 방법을 제공한다. 함축적 애니메이션 방법은 모든 애니메이션 되는 요소들의 특성이 점진적이고 비동기적으로 움직인다고 가정하고 코어 애니메이션은 보간을 하여 중간 과정을 자동으로 만들어 낸다. 이로써 상대적으로 쉽게 동화상 인터페이스를 만들 수 있고 애니메이션을 위한 특정한 코드를 개발자에게 요구하지 않는다. 한편 명확한 애니메이션 방법은 객체를 만들어 이에 대한 처음 상태와 마지막 상태를 규정하는 것이 필요한 방법이다.[1]

코어 애니메이션은 모든 시각적 요소를 애니메이션으로 만들 수 있으며 코어 이미지, 코어 비디오, 다른 쿼츠 기술에 접근하는 통일된 방법을 제공한다. 나머지 그래픽 모델과 같이, 코어 애니메이션은 그래픽 프로세서에 의해 가속할 수 있다.[1]

동화상으로 구현되는 시퀀스는 메인 런 루프에서 독립한 스레드에서 실행하며 애니메이션을 진행하는 동안 응용 프로그램이 동작할 수 있게 만들어 준다. 이렇게 하여 응용 프로그램의 성능에 영향을 미치지 않고 애니메이션은 중단되거나 되돌려지거나 대상을 바꿀 수 있다.[1]

기존의 코코아(Cocoa) 애니메이션을 업데이트하여 코어 애니메이션을 사용하는 것은 작업이 단순하다. 응용 프로그램이 사용하는 표준 GUI 위젯과 창은 초기에 코어 애니메이션 설정 명령에 등록된다. 게다가 코어 애니메이션 코드는 표준 GUI 로직과 분리된다.

특징 편집

  • 간단한 프로그래밍만으로 레이어 객체들간의 위계구조를 이용한 수준 높은 애니메이션 효과를 만들어 낼 수 있다.
  • 가벼운 데이터 구조로 되어 있어 수백 개의 객체 레이어들을 동시에 애니메이션으로 만들고 표시하기 쉽다.
  • 추상화된 애니메이션 인터페이스는 서로 다른 스레드 사이와 독립된 응용 프로그램의 활동 중에서도 애니메이션이 잘 동작하게끔 도와 준다.
  • 시간당 화면 표시 장면수의 관리는 코어 애니메이션이 담당한다.
  • 변화가 생길 때에만 다시 그리기 과정이 필요하다.
  • 유연한 레이아웃 관리는 어떤 레이어의 크기와 위치를 연관된 다른 레이어들과 상대적인 값을 갖도록 할 수 있다.

역사 편집

코어 애니메이션은 맥 오에스 텐 v10.5에 처음 선보인 것으로 보이지만 실제로는 아이폰 소프트웨어 팀에 의해 처음 밝혀졌다.[출처 필요] 공식적으로는 2006년 8월 7일WWDC 2005 동안 처음 선보이게 되었다. 맥월드 엑스포에서 애플은 아이폰이 맥 오에스 텐의 별도 버전을 실행하고 있고 코어 애니메이션을 사용한다고 발표하였다.

참조 편집

  1. “Leopard Technology Series for Developers: Leopard Developer Application Technologies Overview”. 2008년 5월 14일에 원본 문서에서 보존된 문서. 2008년 4월 13일에 확인함. 

외부 링크 편집