ゲーム内のテキストがデフォルトフォントだとがっかりしますよね。
クオリティの高いゲームを作るには、「ゲーム性」だけでなく細部にもこだわらねばならぬ。
ということで今回は、ネットでフォントを探してGUIに適用してみます。
フォントを探す
ネットで探すとクオリティの高いフォントがいくらでも公開されています。
フリーのものも多いので、自分で探してみるのもおもしろいです。
びっくりするくらいあります。
Unityで対応しているフォントファイルは、TrueType (拡張子 .ttf)もしくはOpenType (拡張子 __.otf) です。
ダウンロードする前に、これらのファイル形式で配布されているかを確認しましょう。
参考までに、フォントを集めたサイトをご紹介します。
日本語フォント
この他にも、ググれば、まとめサイトとか、たくさん出てきます。
欧文フォント
英語なのでライセンス形式には注意しましょう。
Unityにインポートする
Unityにインポートするには、ダウンロードしたファイルの、.ttf もしくは .otf ファイルを、そのままUnityにドラッグ&ドロップするだけです。
プロジェクトでは下のようなアイコンで表示されます。
uGUIのTextコンポーネントに適用する
下の部分に、インポートしたフォントアセットをドラッグします。
適用前は
適用後
フォントがボケている場合
Textコンポーネントの Font Size を大きくするとボケを解消できます。 Text の RectTransform 自体を大きくしても解消しないので注意。
フォントアセット自体にも FontSize 設定はありますが、uGUI上では気にしなくていいみたいです。
また、Canvasの設定が World Space になっている(3D空間上にテキストが存在している)場合、フォントサイズを大きくしても、カメラとの距離によってボケる場合があります。
この場合、Font Size をさらに大きくして RectTransform の Scale を小さくすることで対応可能です。
上の画像はフォントサイズ倍、Scale 0.5 にしたものです。ボケは解消されている。
フォントのアレコレ
上でやったように、フォントのインポートだけなら簡単です。インポートだけならね。
ただ、やっぱりフォントは文字を読ませるためにあるので、可読性というモノまで考える必要が出てくるわけです。
禁則処理とかプロポーショナルフォントとか考え出すと胃が痛くなる問題だったりします。
また、フォントを全部差し替えるとなると、フォントアセット自体のファイルサイズがアプリのサイズに上乗せされるので、そこのトレードオフも考えなくてはなりません。
簡単なデータ削減方法書きました ↓
・参考
https://docs.unity3d.com/ja/current/Manual/class-Font.html