SlideShare a Scribd company logo
1 of 38
TextMesh Proを使いこなす
ユニティ・テクノロジーズ・ジャパン合同会社 中村 剛
基本
テキスト種類は2つ
• 3D Object(3Dテキスト)
TextMeshPro クラス
• UI(uGUI向け)
TextMeshProUGUI クラス
テキストを使用した装飾はHTMLと同様なタグを使用
<align=center>中央表示</align>
<align=left>左寄せ</align>
<align=right>右寄せ</align>
<b>Bold(太字)</b>
<i>Italics(斜体)</i>
<u>Underline(アンダーライン)</u>
<s>Strikethrough(打ち消し)</s>
<sup>Superscript(上付き文字)</sup>
<sub>Subscript(下付き文字)</sub>
<mark=#ffff00aa>マーカーを引く</mark>
使用可能なタグはこちらを参照
http://digitalnativestudios.com/textmeshpro/docs/rich-text/
タグによるフォントサイズ指定
%指定、相対値、絶対値で指定可能
<size=100%>AAA</size>
<size=+10>BBB</size>
<size=30>CCC</size>
定義済みのスタイルを適用
TMP Default Style Sheet.asset に
定義されているスタイルを使用可能。
もちろん、スタイルは追加や削除可能
。
<style=H1>ABC</style>【記述例】
フォントAsset
フォントAsset
TextMesh Proではフォントファイルから直接レン
ダリングする事は出来ません。フォントファイル
のデータから作成した Font Asset(.asset) ファイル
の情報を使用します
作成方法
メニューから Window > TextMeshPro > Font
Asset Creator と選択
日本語フォントで作成する時のポイント
• Font Size は Custom Size を使用
• 32pointくらいであれば 4096x4096
に収まる
• 使用する文字の範囲は Shift JIS と
同じでほとんどの場合にはOK
テキストの途中に Sprite を挟む
テキストの途中に Sprite を挟む
タグを使ってテキストの途中に Sprite を挟む事が可能です(
使用可能な Sprite は事前に Sprite Asset(.asset) として作成
したもののみ)
<sprite="Emoji" index=0>
<sprite="Emoji" name="EmojiOne_0">
タグの記述方法
デフォルトの Sprite Asset を使用する場合には
Sprite Asset 名は省略可能
<sprite index=0>
チャットアプリ
Slack など最近のチャットアプリで使用可能な :smail: などの
記述での絵文字入力が出来るアプリも作成可能
1. ユーザが「よろしくお願いします:smail:」と入力
2. 「よろしくお願いします<sprite="Emoji" name=":smail:">
」に置換
3. 画面には「よろしくお願いします+絵文字」が表示される
チャットアプリ
テキストの途中で他のフォントを使用す
る
テキストの途中で他のフォントを使用する
<font="FOT-TsukuMinPr6-D SDF">ABC</font>
使用したいフォントの Font Asset 名を記述
Material
Material
• Face:色やテクスチャを設定
• Outline:枠線
• Underlay:エンボス(凹形状な表現)や影
• Bevel:ベベル(凸形状な表現)
• Lighting:ライトの色や角度
長文テキスト向けの機能
テキストの流し込み
テキストの流し込み
Linked に設定 次にテキストを流し込む
TextMeshProUGUI を指定
TextMeshProUGUI の Inspector の以下の部分で設定
ページ送り
特定の位置でページを切り替えた
い時には <page> タグを差し込む
ページ送りのプログラム
textInfo.pageCount:全ページ数
pageToDisplay:表示中のページ
public class PaginationSample : MonoBehaviour {
public TextMeshProUGUI TextMeshProUGUI;
int pageCount;
void Start() {
pageCount = TextMeshProUGUI.textInfo.pageCount;
}
public void NextPage () {
int page = TextMeshProUGUI.pageToDisplay;
page++;
if (page > pageCount) {
page = pageCount;
}
SetPage (page);
}
マニアックな機能
アジア圏の改行処理
Line Breaking Resources for Asian languages に
して設定(デフォルトで設定済み)
Leading Characters
LineBreaking Leading Characters.txt で設定
([{〔〈《「『【〘〖〝‘“⦅« などの行末禁則文字を
が設定済み
Following Characters
LineBreaking Following Characters.txt で設定
,)]}、〕〉》」』】〙〗〟’”⦆» などの行頭禁則文
字が設定済み
まとめ
• uGUIのTextの代わりに使うことが出来る
• タグで文字ごとに装飾が出来る
• テキストの途中に Sprite が使える
• テキストの流し込みが可能
• ベベルやエンボスの表現も可能
おまけ
参考資料
参考資料
TextMesh Pro の公式ドキュメント
http://digitalnativestudios.com/textmeshpro/docs/
TextMesh Pro のAPIリファレンス
http://digitalnativestudios.com/textmeshpro/docs/ScriptReference/Text
MeshPro.html
TextMesh Pro の公式サイト
http://digitalnativestudios.com/
参考資料
Shift JIS に含まれる文字の一覧を含んだテキストファイル - 強火で進め
http://d.hatena.ne.jp/nakamura001/20120913/1347553798
Sprite Asset の作り方
Sprite Asset の作成
Sprite Asset化したい Texture( Type は Sprite のもの) を右クリックし、
Create > TextMeshPro > Sprite Asset と選択
Sprite Asset の作成
1つのテクスチャに複数の Sprite が存在する場合には Sprite Mode を
Multiple にした後に Sprite Editor ボタンを押して編集
※基本的にはパフォーマンスの面から1つのテクスチャに1つの Sprite では無く、
その画面で同時に使用する可能性の有る Sprite 全てを含める様にしましょう
注意点
• Sprite Asset化したファイルは専用のフォルダに配置する
• デフォルトでは Assets/TextMesh Pro/Resources/Sprite Assets
複数の画像ファイルから Multiple Sprite を作成
Sprite Asset 作成の為に複数の画像ファイルから Multiple Sprite な Sprite
を作成したい場合には Simple Sprite Packer(http://u3d.as/9CY)という無料
のアセットがオススメです。

More Related Content

What's hot

What's hot (20)

Unityではじめるオープンワールド制作 エンジニア編
Unityではじめるオープンワールド制作 エンジニア編Unityではじめるオープンワールド制作 エンジニア編
Unityではじめるオープンワールド制作 エンジニア編
 
MAYAで作ったアニメーションをUnityに取り込んで動かしてみるの巻
MAYAで作ったアニメーションをUnityに取り込んで動かしてみるの巻MAYAで作ったアニメーションをUnityに取り込んで動かしてみるの巻
MAYAで作ったアニメーションをUnityに取り込んで動かしてみるの巻
 
うちではこうやっています UI構築のルールとPlaymakerを使った画面遷移
うちではこうやっています UI構築のルールとPlaymakerを使った画面遷移うちではこうやっています UI構築のルールとPlaymakerを使った画面遷移
うちではこうやっています UI構築のルールとPlaymakerを使った画面遷移
 
【Unite Tokyo 2019】Unityだったら簡単!マルチプレイ用ゲームサーバ開発 ~実践編~
【Unite Tokyo 2019】Unityだったら簡単!マルチプレイ用ゲームサーバ開発 ~実践編~【Unite Tokyo 2019】Unityだったら簡単!マルチプレイ用ゲームサーバ開発 ~実践編~
【Unite Tokyo 2019】Unityだったら簡単!マルチプレイ用ゲームサーバ開発 ~実践編~
 
バイキング流UE4活用術 ~BPとお別れするまでの18ヶ月~
バイキング流UE4活用術 ~BPとお別れするまでの18ヶ月~バイキング流UE4活用術 ~BPとお別れするまでの18ヶ月~
バイキング流UE4活用術 ~BPとお別れするまでの18ヶ月~
 
猫でも分かる UE4のAnimation Blueprintの運用について
猫でも分かる UE4のAnimation Blueprintの運用について猫でも分かる UE4のAnimation Blueprintの運用について
猫でも分かる UE4のAnimation Blueprintの運用について
 
Cinemachineで見下ろし視点のカメラを作る
Cinemachineで見下ろし視点のカメラを作るCinemachineで見下ろし視点のカメラを作る
Cinemachineで見下ろし視点のカメラを作る
 
猫でも分かるUMG
猫でも分かるUMG猫でも分かるUMG
猫でも分かるUMG
 
多機能ボイチャを簡単に導入する方法
多機能ボイチャを簡単に導入する方法多機能ボイチャを簡単に導入する方法
多機能ボイチャを簡単に導入する方法
 
中級グラフィックス入門~シャドウマッピング総まとめ~
中級グラフィックス入門~シャドウマッピング総まとめ~中級グラフィックス入門~シャドウマッピング総まとめ~
中級グラフィックス入門~シャドウマッピング総まとめ~
 
60fpsアクションを実現する秘訣を伝授 基礎編
60fpsアクションを実現する秘訣を伝授 基礎編60fpsアクションを実現する秘訣を伝授 基礎編
60fpsアクションを実現する秘訣を伝授 基礎編
 
猫でも分かるUE4.22から入ったSubsystem
猫でも分かるUE4.22から入ったSubsystem 猫でも分かるUE4.22から入ったSubsystem
猫でも分かるUE4.22から入ったSubsystem
 
【Unite Tokyo 2019】今すぐ現場で覚えておきたい最適化技法 ~「ゲシュタルト・オーディン」開発における最適化事例~
【Unite Tokyo 2019】今すぐ現場で覚えておきたい最適化技法 ~「ゲシュタルト・オーディン」開発における最適化事例~【Unite Tokyo 2019】今すぐ現場で覚えておきたい最適化技法 ~「ゲシュタルト・オーディン」開発における最適化事例~
【Unite Tokyo 2019】今すぐ現場で覚えておきたい最適化技法 ~「ゲシュタルト・オーディン」開発における最適化事例~
 
Unityでオニオンアーキテクチャ
UnityでオニオンアーキテクチャUnityでオニオンアーキテクチャ
Unityでオニオンアーキテクチャ
 
[CEDEC2018] UE4で多数のキャラクターを生かすためのテクニック
[CEDEC2018] UE4で多数のキャラクターを生かすためのテクニック[CEDEC2018] UE4で多数のキャラクターを生かすためのテクニック
[CEDEC2018] UE4で多数のキャラクターを生かすためのテクニック
 
UE4で作成するUIと最適化手法
UE4で作成するUIと最適化手法UE4で作成するUIと最適化手法
UE4で作成するUIと最適化手法
 
ゆるゆるUE4ネットワーク入門
ゆるゆるUE4ネットワーク入門ゆるゆるUE4ネットワーク入門
ゆるゆるUE4ネットワーク入門
 
UniRx完全に理解した
UniRx完全に理解したUniRx完全に理解した
UniRx完全に理解した
 
【Unity道場 2017】PlayMakerによる初めてのUnityプログラミング
【Unity道場 2017】PlayMakerによる初めてのUnityプログラミング【Unity道場 2017】PlayMakerによる初めてのUnityプログラミング
【Unity道場 2017】PlayMakerによる初めてのUnityプログラミング
 
若輩エンジニアから見たUniRxを利用したゲーム開発
若輩エンジニアから見たUniRxを利用したゲーム開発若輩エンジニアから見たUniRxを利用したゲーム開発
若輩エンジニアから見たUniRxを利用したゲーム開発
 

Viewers also liked

Viewers also liked (9)

【Unity道場スペシャル 2017博多】無料アニメーションツールAnima2Dを使ってみよう
【Unity道場スペシャル 2017博多】無料アニメーションツールAnima2Dを使ってみよう【Unity道場スペシャル 2017博多】無料アニメーションツールAnima2Dを使ってみよう
【Unity道場スペシャル 2017博多】無料アニメーションツールAnima2Dを使ってみよう
 
【Unity道場スペシャル 2017博多】クォータニオン完全マスター
【Unity道場スペシャル 2017博多】クォータニオン完全マスター【Unity道場スペシャル 2017博多】クォータニオン完全マスター
【Unity道場スペシャル 2017博多】クォータニオン完全マスター
 
【Unity道場スペシャル 2017札幌】超初心者向け!Unityのオーディオ機能を使ってみよう
【Unity道場スペシャル 2017札幌】超初心者向け!Unityのオーディオ機能を使ってみよう【Unity道場スペシャル 2017札幌】超初心者向け!Unityのオーディオ機能を使ってみよう
【Unity道場スペシャル 2017札幌】超初心者向け!Unityのオーディオ機能を使ってみよう
 
【Unity道場スペシャル 2017博多】スマホゲーム開発者が知っておくべきチートのリスク&対策
【Unity道場スペシャル 2017博多】スマホゲーム開発者が知っておくべきチートのリスク&対策【Unity道場スペシャル 2017博多】スマホゲーム開発者が知っておくべきチートのリスク&対策
【Unity道場スペシャル 2017博多】スマホゲーム開発者が知っておくべきチートのリスク&対策
 
【Unity道場スペシャル 2017博多】Unityで楽しむノンフォトリアルな絵づくり講座:トゥーンシェーダー・マニアクス
【Unity道場スペシャル 2017博多】Unityで楽しむノンフォトリアルな絵づくり講座:トゥーンシェーダー・マニアクス【Unity道場スペシャル 2017博多】Unityで楽しむノンフォトリアルな絵づくり講座:トゥーンシェーダー・マニアクス
【Unity道場スペシャル 2017博多】Unityで楽しむノンフォトリアルな絵づくり講座:トゥーンシェーダー・マニアクス
 
Substance勉強会 in Osaka
Substance勉強会 in OsakaSubstance勉強会 in Osaka
Substance勉強会 in Osaka
 
【Unity道場スペシャル 2017京都】トゥーンシェーダー・マニアクス2
【Unity道場スペシャル 2017京都】トゥーンシェーダー・マニアクス2【Unity道場スペシャル 2017京都】トゥーンシェーダー・マニアクス2
【Unity道場スペシャル 2017京都】トゥーンシェーダー・マニアクス2
 
【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-
【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-
【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-
 
【Unity道場スペシャル 2017京都】最適化をする前に覚えておきたい技術
【Unity道場スペシャル 2017京都】最適化をする前に覚えておきたい技術【Unity道場スペシャル 2017京都】最適化をする前に覚えておきたい技術
【Unity道場スペシャル 2017京都】最適化をする前に覚えておきたい技術
 

More from Unity Technologies Japan K.K.

今だから聞きたい!Unity2017/18ユーザーのためのUnity2019 LTS基礎知識
今だから聞きたい!Unity2017/18ユーザーのためのUnity2019 LTS基礎知識 今だから聞きたい!Unity2017/18ユーザーのためのUnity2019 LTS基礎知識
今だから聞きたい!Unity2017/18ユーザーのためのUnity2019 LTS基礎知識
Unity Technologies Japan K.K.
 

More from Unity Technologies Japan K.K. (20)

建築革命、更に更に進化!便利さ向上【Unity Reflect ver 3.0 】
建築革命、更に更に進化!便利さ向上【Unity Reflect ver 3.0 】建築革命、更に更に進化!便利さ向上【Unity Reflect ver 3.0 】
建築革命、更に更に進化!便利さ向上【Unity Reflect ver 3.0 】
 
UnityのクラッシュをBacktraceでデバッグしよう!
UnityのクラッシュをBacktraceでデバッグしよう!UnityのクラッシュをBacktraceでデバッグしよう!
UnityのクラッシュをBacktraceでデバッグしよう!
 
Unityで始めるバーチャルプロダクション
Unityで始めるバーチャルプロダクションUnityで始めるバーチャルプロダクション
Unityで始めるバーチャルプロダクション
 
ビジュアルスクリプティング (旧:Bolt) で始めるUnity入門3日目 ゲームをカスタマイズしよう
ビジュアルスクリプティング (旧:Bolt) で始めるUnity入門3日目 ゲームをカスタマイズしようビジュアルスクリプティング (旧:Bolt) で始めるUnity入門3日目 ゲームをカスタマイズしよう
ビジュアルスクリプティング (旧:Bolt) で始めるUnity入門3日目 ゲームをカスタマイズしよう
 
ビジュアルスクリプティングで始めるUnity入門2日目 ゴールとスコアの仕組み - Unityステーション
ビジュアルスクリプティングで始めるUnity入門2日目 ゴールとスコアの仕組み - Unityステーションビジュアルスクリプティングで始めるUnity入門2日目 ゴールとスコアの仕組み - Unityステーション
ビジュアルスクリプティングで始めるUnity入門2日目 ゴールとスコアの仕組み - Unityステーション
 
ビジュアルスクリプティングで始めるUnity入門1日目 プレイヤーを動かそう
ビジュアルスクリプティングで始めるUnity入門1日目 プレイヤーを動かそうビジュアルスクリプティングで始めるUnity入門1日目 プレイヤーを動かそう
ビジュアルスクリプティングで始めるUnity入門1日目 プレイヤーを動かそう
 
PlasticSCMの活用テクニックをハンズオンで一緒に学ぼう!
PlasticSCMの活用テクニックをハンズオンで一緒に学ぼう!PlasticSCMの活用テクニックをハンズオンで一緒に学ぼう!
PlasticSCMの活用テクニックをハンズオンで一緒に学ぼう!
 
点群を使いこなせ! 可視化なんて当たり前、xRと点群を組み合わせたUnityの世界 【Interact , Stipple】
点群を使いこなせ! 可視化なんて当たり前、xRと点群を組み合わせたUnityの世界 【Interact , Stipple】点群を使いこなせ! 可視化なんて当たり前、xRと点群を組み合わせたUnityの世界 【Interact , Stipple】
点群を使いこなせ! 可視化なんて当たり前、xRと点群を組み合わせたUnityの世界 【Interact , Stipple】
 
Unity教える先生方注目!ティーチャートレーニングデイを体験しよう
Unity教える先生方注目!ティーチャートレーニングデイを体験しようUnity教える先生方注目!ティーチャートレーニングデイを体験しよう
Unity教える先生方注目!ティーチャートレーニングデイを体験しよう
 
「原神」におけるコンソールプラットフォーム開発
「原神」におけるコンソールプラットフォーム開発「原神」におけるコンソールプラットフォーム開発
「原神」におけるコンソールプラットフォーム開発
 
FANTASIANの明日使えない特殊テクニック教えます
FANTASIANの明日使えない特殊テクニック教えますFANTASIANの明日使えない特殊テクニック教えます
FANTASIANの明日使えない特殊テクニック教えます
 
インディーゲーム開発の現状と未来 2021
インディーゲーム開発の現状と未来 2021インディーゲーム開発の現状と未来 2021
インディーゲーム開発の現状と未来 2021
 
建築革命、更に進化!デジタルツイン基盤の真打ち登場【概要編 Unity Reflect ver 2.1 】
建築革命、更に進化!デジタルツイン基盤の真打ち登場【概要編 Unity Reflect ver 2.1 】建築革命、更に進化!デジタルツイン基盤の真打ち登場【概要編 Unity Reflect ver 2.1 】
建築革命、更に進化!デジタルツイン基盤の真打ち登場【概要編 Unity Reflect ver 2.1 】
 
Burstを使ってSHA-256のハッシュ計算を高速に行う話
Burstを使ってSHA-256のハッシュ計算を高速に行う話Burstを使ってSHA-256のハッシュ計算を高速に行う話
Burstを使ってSHA-256のハッシュ計算を高速に行う話
 
徹底解説 Unity Reflect【開発編 ver2.0】
徹底解説 Unity Reflect【開発編 ver2.0】徹底解説 Unity Reflect【開発編 ver2.0】
徹底解説 Unity Reflect【開発編 ver2.0】
 
徹底解説 Unity Reflect【概要編 ver2.0】
徹底解説 Unity Reflect【概要編 ver2.0】徹底解説 Unity Reflect【概要編 ver2.0】
徹底解説 Unity Reflect【概要編 ver2.0】
 
Unityティーチャートレーニングデイ -認定プログラマー編-
Unityティーチャートレーニングデイ -認定プログラマー編-Unityティーチャートレーニングデイ -認定プログラマー編-
Unityティーチャートレーニングデイ -認定プログラマー編-
 
Unityティーチャートレーニングデイ -認定3Dアーティスト編-
Unityティーチャートレーニングデイ -認定3Dアーティスト編-Unityティーチャートレーニングデイ -認定3Dアーティスト編-
Unityティーチャートレーニングデイ -認定3Dアーティスト編-
 
Unityティーチャートレーニングデイ -認定アソシエイト編-
Unityティーチャートレーニングデイ -認定アソシエイト編-Unityティーチャートレーニングデイ -認定アソシエイト編-
Unityティーチャートレーニングデイ -認定アソシエイト編-
 
今だから聞きたい!Unity2017/18ユーザーのためのUnity2019 LTS基礎知識
今だから聞きたい!Unity2017/18ユーザーのためのUnity2019 LTS基礎知識 今だから聞きたい!Unity2017/18ユーザーのためのUnity2019 LTS基礎知識
今だから聞きたい!Unity2017/18ユーザーのためのUnity2019 LTS基礎知識
 

【Unity道場 博多スペシャル 2017】Textmesh proを使いこなす