フォントフォントのインポートについて以下の記事で扱いました。pocket【Unity】フォントをインポートして文字を表示する実験https://ekulabo.com/import-fontsUnityのデフォルトのフォントは日本語表示には向いていません。英字はともかく、漢字とひらがなの太さが合ってなかったりと、ゲームをリリースするにはきつい状態。外部からフォントをインポートしてイケてるテキストを表示しましょ。この中ではインポートしてTextコンポーネントに人の手でセットするところまでやりましたが、動的に切り替えたい欲求が生まれてきたんです。StyleでBoldに切り替えるとちょっと問題があったため。StyleのBoldですが、フォントによっては太字にならず、横に拡大されて表示されます。Styleがゲームの実行環境にインストールされているフォントを見にいっているため。実行環境に依存する設定なので、使用時は要注意。デフォルトで入っているArialのフォントではBoldが効くのに、自分でインポートしたフォントだと太くならず、文字が横に拡大される問題がありました。なんと、ゲームを実行しているシステムにフォントがインストールされていないとBoldにならないんです。Windows向けにゲームをビルドしたら、そのゲームをダウンロードしたプレイヤーのPCにそのフォントがインストールされてないと文字がBoldにならない困った現象。それはちょっと嬉しくないなーと思い、ゲーム内で動的にフォントを切り替えられるスクリプトを簡単に書いてみました。FONTSさんが提供されているmplus-1pのregularとboldを使います。Licenseのもと、ゲーム内への組み込みも可能なので非常に重宝する素敵なフォントです。『mplus-1p-regular.ttf』と『mplus-1p-bold.ttf』の2つのファイルをUnityにインポート。RegularとBold続いて文字を表示するTextコンポーネントを準備。Fontは[mplus-1p-regular]をセットしておきます。このフィールドを動的に操作するスクリプトにする予定。ついでなのでTextフィールドの文字列も変えましょ。Textコンポーネントを作るTextコンポーネントと同じオブジェクトにスクリプトをアタッチすることも少ないでしょうから、マネージャー用オブジェクトを作成して、そこにスクリプトをアタッチします。適当に空のオブジェクトを作っておけばOK。マネージャーさんスクリプトの作成ゲーム実行中にフォントを切り替えます。ボタンなども作ってないので、時間経過でフォントが切り替わるようにしましょ。実際に使うときにはそんな処理しないはずなので、どんなメソッドを呼べばいいかだけ知ってもらえればいいかも。Gist.『Inspector』ウィンドウで切り替えたいフォントをセットし、時間経過でその2つを切り替えます。配列やリストを使えば3つ、4つと増やしていくことも可能です。LightウェイトからBoldウェイトまで徐々に太くなっていく、なんてことも可能。Textコンポーネントをアタッチしたゲームオブジェクトも『Inspector』ウィンドウでセットできるようにし、Start()の中でコンポーネントへの参照をキャッシュしています。CheckSwitchingTime()では経過時間を確認しており、Time.deltaTimeを使って前フレームからの経過時間を加算していき、switchingTimeを超えたらtrueを返すようにします。この結果がtrueになったら、SwitchFont()の中でフォントを切り替えます。Textコンポーネントのfontフィールドはpublicなので、ダイレクトにフォントを指定できます。このスクリプトはマネージャーオブジェクトにアタッチします。動かしてみるんじゃ確認しましょ。自動的にフォントが切り替わる時間が経過していることを示すため、ボールを動かしています。時間経過でちゃんとフォントが切り替わってますね。サンプルの中の時間チェックはざっくり落としてもいいので、フォントをセットするあたりを使ってもらえたらなーと。まとめフォントの切り替えは『Inspector』ウィンドウからだけではなく、スクリプトから動的に切り替えることができます。切り替えるフォントは、同じファミリー内のウェイト違いであることが望ましいです。明朝体からゴシック体に切り替わったりなど、大きすぎる変化はプレイヤーがびっくりしちゃうからね。この記事で掲載したサンプルを見つつ、いい感じにアレンジしてもらえればすごく嬉しいです。ゲーム開発の攻略チャートを作りました!「ゲームを作ってみたいけど、何から手を付けていいか分からない!」そんなお悩みをお持ちの方向けに、todoがアプリをリリースした経験を中心に、ゲーム作りの手順や考慮すべき点をまとめたe-bookを作成しました。ゲーム作りはそれ自体がゲームのように楽しいプロセスなので、「攻略チャート」と名付けています。投稿一覧Unityを使ってアプリを作ったり、Assetを作ったりしてる個人開発者。Unity全般ネタとAsset開発の情報を扱っています。Asset開発は日本語の情報が少ないのよね。ことで些細なネタでも情報を蓄積するのが目的です。StyleのBoldですが、フォントによっては太字にならず、横に拡大されて表示されます。2018.06.07Unityのデフォルトのフォントは日本語表示には向いていません。コメントをキャンセルメールアドレスが公開されることはありません。コメントデータの処理方法の詳細はこちらをご覧ください。todoUnityのアセットを作ったり、スマホ向けのアプリを作っています。このブログではUnity初心者に向けたチュートリアルやテクニックを放出しています。詳しいプロフィールはこちら。お仕事の相談や現在提供中のサービスについては、こちらの『サービス内容』のページをご覧ください。Explorers_todoオンライントレーニングのサイトをオープン!エクスプラボを運営しているtodoが、より集中的にゲーム作りについて学べるオンライントレーニングのサイトをオープンしました。エクスプラボのトレーニングルーム』です。勉強したことの進捗も表示できるようになっているので、どれだけ頑張ったのかが分かるようになっています。ゲーム開発の攻略チャート』というe-bookをプレゼントしています。メルマガではゲーム開発のテクニックを中心に役立つ情報をお届けします。詳しくはこちら!お仕事の依頼はこちら!ゲーム開発のサポートも可能!エクスプラボではゲーム開発のサポートのサービスも行なっています。いう場合にオススメのプランです。詳細はこちら!もちろん、普通に開発依頼をいただいてもお手伝いします。その場合はお問い合わせへ。【Unity】ポストプロセシングを使って簡単にプロっぽいゲーム画面を作るゲームの作り方を学べるオンライン講座のサイトをオープンしました!RANKING【Unity】Mathfの切り上げ、切り捨て、偶数丸め。使い分けが大事よねMathf【Unity】ゲームといえばランダム要素。(12)作ったアプリ空とにゃんこと風船と癒し系縦スクロール避けゲーの『空とにゃんこと風船と』(TODOWORKS名義でリリース)気軽に遊べるスマートフォン向けアプリです。ボクセルアートで彩られるどこかレトロ、でも新しい世界で癒されてみませんか?ぼく、猫ですって!タップ系RPG『ぼく、猫ですって!』(TODOWORKS名義でリリース)気軽に遊べるスマホRPG。