テラシュールブログ

旧テラシュールウェアブログUnity記事。主にUnityのTipsやAR・VR、ニコニコ動画についてのメモを残します。

Unityのモバイル環境でダイナミックフォントを使う

Unityはダイナミックフォントを使えない。
正確に言えば、Unityのモバイル環境ではダイナミックフォントを使うことができない。

なので、Unityではフォントの画像を事前に用意し使うことになっていた。

[Unity3D]NGUIでフォントを設定 その1
http://terasur.blog.fc2.com/blog-entry-108.html

何が問題かといえば、
例えばTwitterの文章を作成するときの文字に使えない文字が混ざったり、
例えばキャラクター名を入力したときに使えない文字が含まれたり、

要するに、ユーザーが自由に入力できるシーンで
使えない文字ができてしまうことが問題になる。

スクリーンショット 2012-08-09 22.14.23
一応、Unity4から対応することになっているけど、
Unity3系から4系に変更する上で、アセットやプロジェクトの混乱は必至。
更新できない環境も出るかもしれない。

何よりiOSAndroidやProライセンスはアップデートに金かかるんで、
アップデートしないって人もいるかもしれない。

■ダイナミックフォントを使うアセットの登場

そんな暗黒の時代に一筋の光が。
ついにUnityでもダイナミックフォントを使えるアセットが登場してた。

一つがunity-systemfontrenderer 、
もう一つがunity-sysfontだ。

gree / unity-systemfontrenderer
https://github.com/gree/unity-systemfontrenderer/

imkira / unity-sysfont
https://github.com/imkira/unity-sysfont

スクリーンショット 2012-08-09 19.23.10 スクリーンショット 2012-08-09 21.56.34
(左:unity-systemfontrenderer 右:unity-sysfontのスクリーンショットを並べたもの)

どちらのアセットもUnity上でダイナミックフォントを使用でき、
しかも日本語にも対応している。

unity-sysfontの使い方は強火で進めさんのHPで紹介しているので参考にどうぞ。

[Unity][Unity3d]モバイル環境でダイナミックフォントが使える様になるプラグイン「unity-sysfont」(強火で進め)
http://d.hatena.ne.jp/nakamura001/20120622/1340367169

■Free版では使いにくい

この素晴らしいアセット、一つ致命的な問題がある。
ネイティブプラグインを利用しているため、
Free版ではエディターで動作を確認することが出来ないのだ

エディターでネイティブプラグインを利用するにはUnity Proが必要。
なので、Freeライセンスでは利用することはできない。

ただし、iOSAndroid上で実際に動かす場合は、
ios ProやAndroid Proでなくともネイティブプラグインを動かせるため、
ちゃんと動作を確認することができる。

要するに、座標指定が面倒だけど使えるって認識。

開発はちょっと面倒だけど
本当に必要な所には使ってみるのも良いかもしれない。



使う場合は、OnDrawGizmosとかで範囲を設定しておくと、
ちょっとだけ使いやすくなるかも(見検証)