iTweenを使ってみる
今日はUnityで簡単に回転や移動といったアニメーションを実現できる無料のAsset、iTweenを紹介します。
https://www.assetstore.unity3d.com/jp/#!/content/84
iTweenとは?
Objectを移動させる際、考えられる方法はいくつかあります。
- Animatorをつかう
- スクリプトで記述
AnimatorとAnimation Clipを使う場合は、Objectの位置が固定されるので決まった位置のObjectにしか適応できません。
スクリプトで記述する場合は、Objectが等速で移動する場合は良いですが、加減速する場合は面倒です。
▲Objectの座標は(0, 0.5, 2)、それに対してアニメーションは(0, 0.5, 0)→(2, 0.5, 0)
どういうときに使う?
- シューティングゲームでの敵の動き
- 竜巻旋風脚みたいな攻撃モーション
- Cubeが回転する独特な世界観
- 移動するUI
実装
iTweenをimportしたSceneに任意のObjectを配置
iTweenTest.cs
using UnityEngine; public class iTweenTest : MonoBehaviour { void Start() { iTween.MoveBy(gameObject, iTween.Hash("x", 2, "time", 1f)); } }
上記のようなCSファイルをObjectにアタッチします。
完成
sampleのコード
iTweenをimportしたときに入っているsampleの解説です。
MoveSample.cs
iTween.MoveBy(gameObject, iTween.Hash("x", 2, "easeType", "easeInOutExpo", "loopType", "pingPong", "delay", .1));
- MoveBy
- GameObjectのpositionから動かす
- gameObject
- 対象となるGameObject
- iTween.Hash()
- "Propertyname1", value1, "Propertyname2", value2, …という感じに続いていきます。
itween.pixelplacement.com
こちらが参考になります。
easeTypeとは何かというとどんな感じで動かすかみたいなものだと思います。説明は難しいので下のサイトを参考にしてください。
easing_demo
おまけ
Cubeが回転する独特な世界観