facebook twitter hatena line google mixi email

Unity/Csharp/iTween

提供: 初心者エンジニアの簡易メモ
移動: 案内検索

iTweenとは

オブジェクトを簡単い移動させるライブラリ

インストール

https://assetstore.unity.com/packages/tools/animation/itween-84

AssetStoreからDownload

  1. unity/windows/assetStoreからiTween検索
  2. iTweenをimportする

csにimportの記述は特にしなくてよい。

数秒間で座標移動する

例:mcオブジェクト

GameObject gameObject = transform.Find ("mc").gameObject;
iTween.MoveTo(gameObject, new Vector3(2f, 2f, 0), 2.0f);

gameObjectが現在いる場所から2, 2へ移動する

iTween.Hashで上記と同じことをやる

iTween.MoveTo (gameObject, iTween.Hash ("x", 2, "y", 2, "time", 2));

数秒後に数秒間移動する

 iTween.MoveTo (gameObject, iTween.Hash ("x", 2, "delay", 2, "time", 3));

拡大

iTween.ScaleTo (gameObject, iTween.Hash ("x", 4, "y", 2, "delay", 1f));

回転

Tween.RotateAdd(obj, iTween.Hash("easeType", iTween.EaseType.linear, "z", 360.0f, "time", 100f, "loopType", iTween.LoopType.loop));

ループ

 iTween.MoveTo (gameObject, iTween.Hash ("x", 2, "time", 3, "loopType", "loop"));

往復

 iTween.MoveTo (gameObject, iTween.Hash ("x", 2, "time", 3, "loopType", "pingpong"));

点滅ループ

iTween.ColorTo(gameObject, iTween.Hash("r" ,0.7f, "g" ,0.7f, "b" ,0.7f, "time", 0.5f, "loopType", "pingpong"));

点滅っぽいループ(透明版)

iTween.ColorTo(gameObject, iTween.Hash("a", 0.5f, "time", 1.0, "loopType", "pingpong"));

完了イベント追加

iTween.MoveTo (gameObject, iTween.Hash ("x", 2, "y", 2, "time", 2,
			"oncomplete", "OncompleteHandler", 
			"oncompletetarget", gameObject));
void OncompleteHandler() {
	Debug.Log ("OncompleteHandler");
}

oncompletetargetを指定するgameObjectは第一引数のgameObjectではなく、 oncompleteで指定したメソッドが存在するGameObjectを指定する。

以下で代用もできる。

Invoke("OncompleteHandler", 2f);

震えるアクション

iTween.ShakePosition(this.gameObject, iTween.Hash("x", 0f, "y", -4f, "z", 0f, "time", 0.2f));

星形

Vector3[] movepath = new Vector3[6];
movepath[0].Set(0f, 1f, 0f); // 1
movepath[1].Set(0.5878f, -0.8090f, 0f); // 5
movepath[2].Set(-0.9511f, 0.3090f, 0f); // 9
movepath[3].Set(0.9511f, -0.3090f, 0f); // 3
movepath[4].Set(-0.5878f, -0.8090f, 0f); // 7
movepath[5].Set(0f, 1f, 0f); // 1
/* 星型頂点 https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q10137274530 */
iTween.MoveTo(obj,iTween.Hash("path",movepath,"time",4, "easetype",iTween.EaseType.linear, "loopType", "pingpong"));

参考

項目詳細 http://madnesslabo.net/utage/?page_id=1791