Alpaca Tech Blog

ゲーム作る系 草食動物の備忘録

【Unity】フォントファイルの容量を減らして比べてみた

前回、

NotoSansフォントファイルの容量でかすぎるよ(アプリ容量が16MBぐらい増える)

と言ってたのですが、

 

フォントファイルをサブセット化
(フォントファイルから一部取り出したフォントファイルを作る)
すると軽くなるっぽいので試してみました。

参考にしたのは、以下の記事です。

11neko.com

 

手順を簡単に書くと、

武蔵システム様のサブセットフォントメーカーを利用して、

第1水準の漢字を指定してサブセット化する。

です。

 

ファイル容量の違い 

対象:NotoSansCJKjp-Regular.otf

で行うと、
16MB から 0.7MBになりました。

Unityでビルドした時もアプリのファイルサイズ減りました

 

見た目の違い

Unity.UI.Textで表示した結果は以下の通りです。

f:id:alpacatech:20170727191643p:plain
上から順に
・未加工(16MB)
・サブセット化(0.7MB)
・Arial(Unityのデフォルト)

です。


微妙に違うのは、

サブセットフォントメーカーに記載されてる通り、
サブセット化する際に情報が一部削除されていると思われます。たぶん。

(「綺」が変わりすぎてるのは、JIS第1水準に含まれてない為です)

 

フォント形式は、TrueTypeからOpenTypeになっています。

adlive.co

 

フォントファイルサイズ問題に関しては、

フォントファイルをTexture化する「TextureMeshPro」使ったら解決しそう(未確認)なのですが、

 

TextureMeshProに移行するのが大変、
フォントサイズ大きくてアプリ容量減らしたいと思う時は試してみるといいかも。