Unityで画面上に文字を表示し、大き過ぎるキャンバスをカメラに一致させる方法/テキスト(Text)の使い方

IT

画面上にテキストを表示させる方法なんですが、キャンバスがデカ過ぎて初見時意外と困ったので、その対処法も書いておきます。

スポンサーリンク

成果物

text15
画面上にテキストを表示します。

テキストオブジェクトの追加

text1
こういう状態からテキストを追加します。
text2
テキストオブジェクトを追加するには、+ボタン(Create)UIテキスト(Text)をクリックします。
text3
すると画面上に謎の線ができますが、
text4
画面を引いてみると、カメラよりかなりでかいサイズのテキストが作られていることがわかりました(実行環境によります)。
text5
さらに、Textの親オブジェクトとしてCanvasオブジェクト、他にEventSystemというオブジェクトが自動的に作られていることがわかります。
text6
実際には馬鹿でかいのはCanvasで、テキストのサイズはCanvasのサイズに依存します。
Canvasのインスペクターでレンダーモードスクリーンスペース-カメラにし、
text7
ヒエラルキーのMain Cameraをドラッグしてきて、
text8
レンダーカメラにセットする、という操作をして、
text9
Canvasのサイズをカメラに合わせれば、自動的にテキストもある程度適切なサイズになります。一見テキストが行方不明ですが、
text10
ヒエラルキーのTextをダブルクリックするなどすると、位置を特定できます。
text12
移動して外枠を大きくしてあげます。外枠が小さいと、文字サイズを上げたり文字数が増えた時に文字が表示されなくなります。
text11
フォントサイズで文字のサイズを変更し、
text13
テキストで文章内容、
text14
色で文字色を変更して、ある程度読みやすくしておきます。フォントなども変更できます。
やりたいことから逆引きするUNITYの使い方まとめ
Unityをやりたいことから学習していけるよう、機能・用途別にまとめたページです。C#の命令別の逆引きは現時点で作っていません。2019の時期に書き始めているので、それより前のバージョンについては言及しません。

コメント