TextMeshProが犯行予告みたいになったのはPaddingのせいでした

Unityのバージョンは2022.3.8f1、TextMeshProは3.0.9です。


TextMeshProで 日本語フォント(Zen Antique Soft)を表示しようとしたらなぜか犯行予告のようになりました。(Custom Character Listは使う文字のみ定義)



調べた結果、どうやらPaddingが足りないらしいです。

512×512に対して5なら、Paddingを80にすれば良いと思いましたが、最大64までしか設定できないらしく、ほぼ変わらず。



このSP/PD Ratioが問題のようで、公式によると「経験則では、サンプリングとパディングの比率は 1:10」らしく、10%あれば問題なくなるらしいです。

これ以上Paddingは上げられないので仕方なくAtlas Resolutionを8192から4096に落としてみたところ、正常に表示されました。



しかしSP/PD Ratioは2.6%。・・・結局、表示を見ながら調整が必要ということでしょう。


さらに調べると、Sampling Point Size を Auto Sizing にせず、自分で設定すべき、という意見もありました。


・・・それはそれで面倒なので、さすがに今後のアップデートで最低限表示はできるように、 Size と Padding が自動で調整されてほしいです・・・



Zen Antique Softのライセンス(SIL OPEN FONT LICENSE Version 1.1)

コメント