Tween in Unity3D

심리스(seamless)한 컨텐츠 제작에 있어 필수적인 요소중 하나가 트윈(tween) 스크립트 일것이다. Flash 가 점점 인터랙티브 컨텐츠 제작툴로서 자리를 잡아가면서 TweenLite,Tweener 와 같은 Falsh Open API  트윈엔진들이 개발되어 트윈 스크립트에 대한 부담감을 상당히 덜어주었다. 사실 이런 트윈엔진들의 도움없이 정교한 script animation easing 조절이 쉽지 않을 뿐더러 컨텐츠 제작시에 오히려 주객전도가 되어 이런처리들을 하느라 많은 시간을 할애해야 하는 경우가 발생한다. 물론 간단한 이징공식을 이용하여 구현하는 것이 가능하긴하지만  이런경우는 다양한 이징함수의 움직임을 이용하여 좀더 다이나믹한 움직임을 구현하는것과는 분명 움직임에 있어 차이가 나는것이 사실이다. 따라서 새로운 개발툴을 접할 시에는 항상 이런 기본적인 트윈엔진의 유무를 살펴보곤한다.

Unity3D 를 다루면서도 이런 트윈엔진이 분명있을거라 생각하고 찾아봤는데 Flash 만큼은 아니지만 3~4개 정도 찾을 수 있었다. 다만, 아직 많이 사용하는 툴이 아니다 보니 개인적으로 만들어 쓰는 형태라 아직까지는 대부분 기능이 다양하지 못하고 체졔적이지 못한게 약간은 아쉬운 부분이긴하다. 그중에서도 가장 완성도가 높은 iTween 이라는 Unity3d Tween Engine 을 소개할까 한다.

우선 공식 사이트를 한번 살펴보자. 언듯보면 TweenLite,TweenMax 의 사용법과 비슷하다. 아니 거의 같다고 보면 된다.  그도 그럴것이 위 엔진들을 기반으로 해서 만들었다고 하니 사용경험이 있는 Flash 개발자들은 한두번만 사용한다면 어렵지 않게 적용할 수 있을 것이다.

private var targetGameObject : GameObject;
 
function Awake(){
	targetGameObject = gameObject;
}
 
function Start(){
	iTween.moveTo(tweenTarget,{"x":1.7,"y":3,"time":1.3,"transition":"easeInExpo","delay":1.2,"onComplete":"TweenComplete"});
}
 
function TweenComplete(){
 print("TweenComplete");
}

Unity3D 의 스크립트 언어가 Javascript / C# 으로 Flash  Actionscript 와 문법이 비슷한지라 기본적인 코드를 읽는데 큰 어려움이 없어 Flash 개발자가 접근하기 한결 수월 하다. 아마도 Flash 에서의 3D 구현에 아쉬움을 느낀 많은 Flash 개발자들의 참여로 인해 올한해 가장 기대가 되는 툴이기도 하다.

0 Responses to “Tween in Unity3D”


  • No Comments

Leave a Reply