トマシープが学ぶ

Unity/VR/AR/デザイン好きのミーハー 記事内容は自分用のメモです

UnityのTextには文字数の上限がある

Unity2018.4.17

症状

長~いThirdPartyの表記を、スクロールビューのContentsのTextにコピペしたら文字が表示されなくなった。

スクロールバーは動くし、Fontのサイズを小さくしたらスクロールバーが小さくなるなど、そこにTextがある挙動はしているが表示されない。

f:id:bibinbaleo:20200929085718p:plain

(スクショとるためにUnity2019.4で再現させようと思ったけど再現しない・・・)

f:id:bibinbaleo:20200929090352p:plain

原因

少し削ったら表示されたので、まさかと思って調べるとなんと上限があった!!!

描画できる最大文字数
UnityにおいてひとつのMeshが持てる最大頂点数が65,000と決まっているため、Textコンポーネントもその制限を受けます。 そのため、通常4頂点で1文字を描画しているTextコンポーネントにおいて描画できる最大文字数は16,250文字となります。

Unityにおける文字の描画と比較検証 | CyberAgent

 ひえ~

Outlineなどのコンポーネントを付けているかでも変わるって。

対策

文字数減らす

文字数を測ったら15885文字だった。

ライセンスの区切りをーーーーーーーーーで区切っていたのでその線の数を減らしたら14525文字になって、表示できた!!

Textコンポーネントを複数使う

こちらの方はTextを分けている。もし今後削れなくなったらこうするしかなさそう~

greenkour.hateblo.jp

TextMeshPro

もしくはTextMeshProを使う

creator.game.cyberagent.co.jp