はじめに
TextMesh Pro の FontAsset に含めたい文字が変更された時に
FontAsset を自動更新できる「TMP_FontAssetUpdater」を GitHub に公開しました
開発環境
- Unity 2018.3.0f2
- TextMesh Pro 1.3.0
使用例
TextMesh Pro の FontAsset に含めたい文字を .txt に記載して保存することで
その .txt に記載されている文字だけを含むように FontAsset が自動更新されます
Material Preset を使用している場合も正しく更新されます
複数の FontAsset を一括で自動更新することも可能です
自動更新の機能を無効化して手動で更新を行うこともできます
使い方
Project ビューの「Create>TMP_Font Asset Updater Settings」を選択すると
FontAsset の更新ルールを管理するファイルが生成されるので
更新対象の FontAsset、元となるフォントデータ、
FontAsset に含めたい文字が記載された .txt を各項目に設定して
必要に応じて他の項目も Font Asset Creator を使用する時と同様に設定して
「Update」ボタンを押すことで、.txt に記載されている文字だけを含むように
FontAsset が更新されます
「Is Auto Update」をオンにしておくと、.txt に変更があったタイミングで
FontAsset が自動更新されるようになります
FontAsset の更新が完了すると Console ウィンドウに結果が出力されます
Missing Characters (フォントに存在しない文字)を確認できます
注意
Material Preset のファイル名は「【FontAsset のファイル名】_【自由記述】」のように
アンダーバーを使用して命名する必要があります
アンダーバーを使用していない Material Preset は更新の対象外になってしまいます
謝辞
参考リポジトリ
「TMP_FontAssetUpdater」を作成する上で
「Unity TextMeshPro Font Customized Creater」のコードを参考にさせていただきました
フリーフォント
「TMP_FontAssetUpdater」のサンプルには上記のフリーフォントを
使用させていただきました