文字を表示する際、テキストを一括で表示させるのではなく、アニメーションさせながら・フェードしながら表現したいといった希望がある事があります。
今回はその辺りをやってくれるアセットの紹介です。*1
Typeface Animator とは
Typeface Animatorは、文字をアニメーションさせながら表示させるアセットです。下のようにuGUIのテキストを動かしながら表示する事が出来るみたいです。
uGUIを使用しているので、レイアウト調整やマスクといったuGUIの機能をそのままに、文字の表示時にエフェクトを加えられるのが特徴です。
また、文字に対して一括でエフェクトを加えるのではなく、順番にエフェクトが加えられるのは、アセット作者の拘りポイントとなっていそうです。
割と簡単に使える
TextコンポーネントをアタッチしたオブジェクトにTypeface aniamtorコンポーネントを追加し、後は動きを指定するだけの簡単運用です。
設定できる項目は大きく分けて6つ
- SpeedもしくはTimeを指定
- Position(文字の位置)
- Rotation(文字の回転)
- Scale(文字のサイズ)
- Alpha(文字の透明度)
- Color(文字の色)等
この項目毎に開始前(From)・開始後(To)を指定し、その比率をAnimation Curveで指定し、ブレンドを行う感じみたいです。AnimationCurveが上に行けばTo、下に行けばFromの位置に戻る感じです。
Separationを指定の値により「テキスト全体に対してアニメーションを行うか、一部の文字に対してアニメーションを行うか」といった内容が指定出来るみたいです。
例えば下のように「文字を大きくしながら表示したい」場合、Scale(拡大)の項目を使用し、起動時0はサイズ0倍から最終的には1倍になるようにFromとToを設定、AnimationCurveは時間毎に0から1に近づくように設定し、Separationを高めに設定しておけば、綺麗に「文字を大きくしながら表示」出来ます。
説明では分かりにくい所がありますが、実際設定すべき項目は少なく直観的なので、少し動かせば理解出来ると思います。
値段も5ドルと、機能のわりに結構安いのでお勧めです。
現在は開発者がUnityの中の人になったからか、ソースコードが公開状態になっているみたいです。
https://github.com/unity3d-jp/DojoUI1/tree/master/Assets/Fugaku/TypefaceAnimator
関連
uGUIのTextをアニメーションさせる「Typeface Animator」 - 3710のUnityとかの話
Unity uGUIのTextをα値で1文字ずつ表示 - Qiita
Unityで使うフォント(Font)を手っ取り早く多彩に変更する方法! - Unity不定期便
*1:あぁ^~文字がぴょんぴょんするんじゃぁ^~