この記事でのバージョン
Unity 2022.3.32f1
はじめに
以前、テキストのアニメーションを簡単に実装出来る Text Animatorというアセットで、
文字送り(文字を最初から順番に表示する)も簡単に実装する方法という紹介をしました。
今回はText Animatorで文字送りをさせる際に、
特定の文字の時だけ待ち時間を変えて溜めを作る方法の紹介です!
特定の文字の時だけ待ち時間を変えて溜めを作る方法
まず、待ち時間はInspector上だとTypewriterByCharacterの下の方に設定箇所があります。
この際、LongやMiddleといった特定のカテゴリに属している文字だけ待ち時間を変えられます。
ちなみにプログラムからは設定する事も可能です。
//通常の文字の待ち時間(次の文字を表示するまでの時間)を0.03秒に _typewriter.waitForNormalChars = 0.03f; //longの文字の待ち時間を2秒に _typewriter.waitLong = 2.0f;
あとは待ち時間を増やしたいLongやMiddleに属する文字を設定すればいいだけですが、
この対象は残念ながらコードに直書きされており、しかも日本語の句読点には対応していません。
なので、任意の文字の待ち時間を変えたい時はTypewriterByCharacter.csを以下のように変えましょう。
switch (character) { case ';': case ':': case ')': case '-': case ',': case '、'://、をMiddleに追加 return waitMiddle; case '!': case '?': case '.': case '。'://。をLongに追加 return waitLong; }
こうすれば好きな文字のタイミングで溜めを作る事が出来ます。