紹介する内容について
今回はいくつか例を出してソースコードからゲームオブジェクトを制御したいと思います。
内容としては
などをしてみたいと思います。
機能はまだまだありますが、今回は初歩的なものだけです
補間して移動する
ソースコード上の手順としては
ソースコードはこのような形になりました。
using UnityEngine; using DG.Tweening; // 1. 定義を追加 public class DoTweenTest : MonoBehaviour { void Start() { // 2. 移動先を指定(位置、秒数) var tween = transform.DOMove(new Vector3(10f, 10f, 10f), 3f); // 3. 補間方法を指定 tween.SetEase(Ease.Linear); // 4. 終了したらログ tween.OnComplete(()=>Debug.Log("移動終了")); } }
ここから一つずつ解説していきます
1. 定義を追加(ソースコード上の追加)
DOTweenの機能を使うための定義です。
2. 移動先を指定する
定義を追加するとTransformにDOTweenの機能が指定できるようになるので
をしています。
3. 補間タイプを設定
tweenとして受け取ったオブジェクトに色々設定することができます。
ここでは補間タイプ(一定速度)を設定しておきます。
補間タイプはどんなふうに移動するかということです。
例えば一定速度、早→遅、遅→早などがあります
4. 移動が終わったらログを出力
tweenにほしいタイミングで通知を受け取れる関数がたくさんあるので
ここではOnFinishにログ出力を設定して終わったときにログが出力されるようにしておきます。
色々なイベントがあって便利ですよね
動作を確認
移動していることが確認できました!
ログにも「移動完了」と表示されています
色を変える
では次は箱の色を変えてみましょう。
手順は下記となります。
ソースコードはこちら
using UnityEngine; using DG.Tweening; // 1. 定義を追加 public class DoTweenTest2 : MonoBehaviour { void Start() { // 2. 色を変更 var renderer = GetComponent(); var tween = renderer.material.DOColor(Color.red, 1f); // 3. 元の色と赤を繰り返しループする tween.SetLoops(-1, LoopType.Yoyo); } }
1. 定義を追加(ソースコード上の追加)
先程と同じくDOTweenの機能を使うための定義をします。
2. 色を変更
まずはゲームオブジェクトの箱のRendererを取得して
そのマテリアルに対してDOColorを呼び出して設定を行います(赤色で1秒)。
3. 元の色と赤を繰り返しループする
先程受け取った「Tween」にループ設定を行います。
-1で無限ループを指定し、ループのタイプも指定します。
動作確認
動作を確認すると赤と元の色が明滅するような挙動ができました。
ダメージ演出とかに使えそうですね!
他にも便利な機能はたくさん
今回は初歩的な処理を追加しましたが、他にもたくさん便利な機能があるようです。
また良さそうな機能を見つけたら紹介したいと思います!
使ったみた感想
今回DOTweenを使ってみて簡単な挙動や動きをつけるのに
かなり有用なプラグインだと感じました。
イベント経由で色々動かせてUpdateも不要なのは
手軽で便利ですね!
デザイナーさんに引き渡せない心配もある
ただ仕事で使うとしたらハードコード(ソースコードで動かす)のため
デザイナーさんが調整したいというときに外に出せないのが大変かもしれませんね。
そういうときにDOTween Pro(有償版)を使ってエディタ側で
編集できるようにしておくと良いのかもと勝手に想像しています
活動内容のPR
下記が本サイトでの活動内容となります。
終わりに
いかがでしたでしょうか。
今回はメジャーなUnityプラグイン「DOTween」について紹介してみました。
プラグインの追加も簡単でイベントドリブンで動かせるのがとても良かったです。
ぜひ皆様もご活用いただければ幸いです。
私も個人制作で活用して行きたいと思います!
本サイトではゲーム開発やUnity関連の情報などを配信しております。
もし興味がありましたら画面左下のベルマークから購読いただけますと幸いです。
ではここまでお読みいただきありがとうございました。
コメント