Unity의 iTween을 사용해보십시오 그 3 Scale 계

12367 단어 iTweenUnity3DUnity
주식회사 ZOOA(조아)의 zob입니다. [ @twitter " 당사는 프리랜서, 개인 사업주, 월급 UP을 목표로하는 방향으로 고단가 구인 안건 전달 사이트 (ZOB)도 운영하고 있으므로 꼭 봐주세요!
지난번 에 이어, iTween을 여러가지 시험해 보았습니다.

이번은 Scale 계의 메소드를 시험해 보았습니다. 검증에 사용한 Unity 버전은 다음과 같습니다. Unity2018.1.0f2 iTween.ScaleTo ScaleTo는 지정한 값까지 확대·축소 애니메이션을 실시합니다. 사용법은 다음과 같습니다. iTween.ScaleTo(gameObject, iTween.Hash("x", 10f));

위의 Gif는 애니메이션의 모습을 알기 쉽게 하기 위해, 아래와 같이 5초의 시간 지정이 있습니다.
iTween.ScaleTo(gameObject, iTween.Hash("x", 10f, "time", 5f));

감각적으로는 MoveTo, RotateTo와 같이 사용할 수 있을 것 같습니다!
iTween.ScaleTo(gameObject, iTween.Hash("x", 10f, "y", 10f));
iTween.ScaleTo(gameObject, iTween.Hash("x", 10f, "z", 10f));
iTween.ScaleTo(gameObject, iTween.Hash("y", 10f, "z", 10f));

Scale을 3개 지정할 수도 있습니다!
iTween.ScaleTo(gameObject, iTween.Hash("x", 10f, "y", 10f, "z", 10f));

아래와 같이 Hash에서 같은 좌표를 2회 이상 지정하면 움직이지 않기 때문에 주의가 필요합니다.
iTween.ScaleTo(gameObject, iTween.Hash("z", 10f, "z", -10f));

iTween.ScaleFrom



ScaleFrom은 지정된 값에서 원래 값으로 확대/축소 애니메이션합니다.
사용법은 다음과 같습니다.
iTween.ScaleFrom(gameObject, iTween.Hash("x", 10f);



iTween.ScaleUpdate



ScaleUpdate 는 ScaleTo 와 같은, 지정된 값에 확대·축소 애니메이션 시킵니다.
iTween.ScaleUpdate(gameObject, iTween.Hash("x", 10f);

MoveUpdate, RotateUpdate와 동일, Update로 불리지 않으면 확대·축소 애니메이션되지 않습니다.

iTweenTest.cs
public class iTweenTest: MonoBehaviour
{
    void Update()
    {
        iTween.ScaleUpdate(gameObject, iTween.Hash(""x", 10f));
    }

}

ScaleUpdate는 UI의 스크롤러 등으로 오브젝트의 확대 축소를 동적으로 실시하고 싶으면 사용하면 편리합니다.

iTween.ScaleBy



ScaleBy는 현재의 값으로부터, 지정된 값을 곱해 확대·축소 애니메이션 시킵니다.
iTween.ScaleBy(gameObject, iTween.Hash("x", 10f);



ScaleBy는 원래의 Scale의 값×지정한 Scale의 값으로 확대·축소 애니메이션의 최대치를 결정하고 있는 것 같습니다.

아래와 같이 2f를 초기값으로 넣고 있는 경우, 20f까지 확대 애니메이션이 달리기 때문에 주의가 필요합니다.



iTween.ScaleAdd



ScaleAdd는 약간 특별한 동작을합니다.
ScaleAdd를 아래와 같이 단체로 호출했을 경우는, 현재의 오브젝트의 Scale치+ScaleAdd로 설정한 값의 분만큼 확대·축소 애니메이션을 실시합니다.
iTween.ScaleAdd(gameObject, iTween.Hash("x", 10f, "time", 5f));



Add가 붙어 있는 대로, ScaleAdd는 다른 확대·축소 애니메이션 실행중에서도 이용 가능합니다만, Scale계의 애니메이션이 재생되고 있는 경우는, 한 번 확대·축소 애니메이션이 정지 후, 정지 시점에서의 오브젝트의 Scale값+ScaleAdd로 설정한 값만큼 확대·축소 애니메이션을 실시합니다.

설명만으로는 알기 어렵다고 생각하므로, 아래의 샘플 코드로 동작을 시험합니다.
iTween.ScaleTo(gameObject, iTween.Hash("x", 10f, "time", 5f));
iTween.ScaleAdd(gameObject, iTween.Hash("y", 10f, "time", 5f, "delay", 0.5f));



결과는 위와 같이 ScaleTo에 의해 X가 10f가 되기 전에 확대·축소 애니메이션이 멈추고, 다음 ScaleAdd에서 Y 방향으로 Scale되었습니다.

요약



Scale계를 한번에 시험해 보았습니다. 확대·축소 애니메이션을 이렇게 간단하게 할 수 있는 것이 좋네요.
게다가 PunchScale, ShakeScale이 있지만, 나중에 확인하고 기사에 씁니다.

다음 번에도 iTween의 검증 결과를 써 갑니다!

・기술 검증 협력 오기노 유키( 트위터 , Qiita )

Unity의 iTween을 사용해보십시오.
그 1 Move 계
그 2 Rotate 계
그 3 Scale 계열 ← 지금 코코
그 4 Shake 계
그 5 Punch 계

주식회사 ZOOA(조아)
당사는 프리랜서나, 개인 사업주에 특화한 SES 안건 공유 사이트( ZOB )도 운영하고 있으므로 급료 UP를 목표로 하고 있는 분은 꼭 이쪽도 봐 주세요!

좋은 웹페이지 즐겨찾기