この記事でのバージョン
Unity 2022.3.32f1
はじめに
以前、テキストのアニメーションを簡単に実装出来る Text Animatorというアセットを紹介しました。
![]() |
実はこのアセット、文字を動かすだけでなく、
文字送り(文字を最初から順番に表示する)も簡単に実装出来たりします。
しかも、文字送りを実装する時にありがちな
「表示される度にテキストの位置やサイズが変わってしまう」
という問題が起きません。
![]() |
という事で今回はTextAnimatorで文字送りを実装する方法の紹介です!
![]() |
| Text Animator for Unity - Unity Asset Store |
TextAnimatorで文字送り
さっそくTextAnimatorで文字送りする方法ですが、
Text AnimatorというコンポーネントをTextMeshProと同じオブジェクトに追加し、
さらに文字送り用のTypewriter By Characterというコンポーネントも追加します。
(単語単位で表示するTypewriterByWordもある)
![]() |
あとは表示したいテキストを指定し、ShowTextを実行します。
(既に設定されているテキストを表示したい場合はStartShowingText)
using Febucci.UI;//TypewriterByCharacterを使うのに必要。
GetComponent<TypewriterByCharacter>().ShowText("1234567890 あいうえおかきくけこ\n1234567890 あいうえおかきくけこ"); //既に設定されているテキストを最初からアニメーションで表示したい場合 //GetComponent<TypewriterByCharacter>().StartShowingText(restart:true);
![]() |
ただし、Text Animatorはデフォルトで全体に表示と非表示のアニメーションが設定されているので、
これがいらない場合は↓のEffects Countを0にして消す必要があります。
![]() |
ちなみに文字送り自体はDoTweenなどを使っても出来ますが、文字をセンタリングしてる場合などは、
![]() |
表示されている文字でセンタリングしてしまうので、文字が増える度に全体が動いてしまいます。
(TextAnimatorだとこれがなく、最終的な表示に合わせて1文字ずつ表示される)
![]() |
また、メインの機能であるアニメーションと併用する事も、もちろん可能です。
![]() |








