この記事でのバージョン
Unity 2022.3.32f1
はじめに
UnityのTextMesh Proで1文字ずつテキストを表示する、
いわゆる文字送りはDoTweenをはじめ、色々な方法で簡単に実現出来ます。
![]() |
しかし、逆から(右から左に)文字を表示する方法は、意外と用意されていませんでした。
と言う事で今回は、テキストを逆から(右から左に)文字送りして表示する方法の紹介です!
![]() |
テキストを逆から(右から左に)文字送りして表示する
今回はDoTweenの1文字ずつアニメーションさせる方法を使います。
![]() |
具体的には全文字を先にスケール0にして非表示にし、右からスケールを1にしていく表示する感じです。
//DoTweenを使ってで右側から1文字ずつ表示 var countAnimator = new DOTweenTMPAnimator(_totalCountText); var countSequence = DOTween.Sequence(); //表示する時間と、表示間隔 var scaleDuration = 0.01f; var interval = 0.15f; //右側からTween設定 for (int i = countAnimator.textInfo.characterCount - 1; i >= 0; i--) { //最初に文字のスケールを0にして非表示 countAnimator.SetCharScale(i, Vector3.zero); //スケールのTweenで表示し、一定時間待つように countSequence.Append(countAnimator.DOScaleChar(i, Vector3.one, scaleDuration)); countSequence.AppendInterval(interval); }
これを使えば以下のように逆から文字送りして表示する事が出来ます。
(例では2つのSequenceを同時に実行している感じ)
![]() |