テラシュールブログ

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

Unityのテキストにアウトライン(縁)を付ける

今ならTextMeshPro使ったほうが良いかも



ふと思いついたので試したら上手く行ったので紹介。

スクリーンショット 2014-06-21 0.41.00
今回は割と強引な方法で3DTextのテキストにアウトラインを追加した。

行った事はシンプルで、左・右・上・下・右上・右下・左上・左下の方向へ数ドットずらした色違いの同一テキストを設定する。そうすれば、概ねアウトラインが再現出来る。下のgifは面倒なので上下左右のみ。

アウトライン
ついでに、簡単に設定できるコンポーネントを用意した。このOutlineTextを対象のTextMeshへドラッグ&ドロップすれば、アウトラインが追加される。アウトラインを消すにはOutlineTextコンポーネントを対象のフォントから削除する。

…と言いたかったが、削除が上手くいかないのでコンポーネント右上のコンテキストメニューからdestroyを選択してアウトラインを消す。その後OutlineTextを消せば綺麗さっぱり無くなるはずだ。

アウトライン2


この有効に見えるが、この方法は要するにフォントを8回(実際は4回でも良い)レンダリングする事になるので、少し負荷的に勿体無い気がする。

ちなみにフォントを大きくする作戦はずれてしまうので駄目だった。うーん

スクリーンショット 2014-06-21 1.27.15

他にアイディアがあれば教えてくれると嬉しいです。