SlideShare a Scribd company logo
1 of 82
1
文字でカッコいい画面を作ろう。
そう…TextMesh Proならね
2
ユニティ・テクノロジーズ・ジャパン
山村 達彦
@tsubaki_t1
文字、拘ってますか?
4
5
フォントは意外と重要
6
ゲームの雰囲気を伝える
7
カッコいい vs 読みやすい
8
9
文字は意味を伝える
10
文字のレイアウトで見栄えが変わる
フォントを揃える事で統一感を出す
12
文字…フォント…大事…大事…
13
uGUIでは不十分
14
Text Mesh Proって どんな事が出来るの?
16
TextMeshProの凄い所
17
① 拡大してもフォントが滲まない
18
① 拡大しても輪郭がボケずに綺麗
19
uGUI
TextMeshPro
uGUI TextMeshPro
20
② 様々なレイアウト調整機能
21
② 様々なレイアウト調整機能
カーニング有
カーニング無
カーニング?
●文字の組み合わせで
文字のスペースを詰める
●フォントの文字同士の
間隔(アキ)を調整する技法
●文字の形状に合わせて
個別に文字間の距離を微調整する
タイポグラフィ手法
23
文字の間隔調整
24
禁則処理
25
③ 文字に表情を付ける効果が良い
26
③ 文字に表情を付ける効果が良い
フワっとした影 アウトライン グロー 模様
アウトライン
TextMeshPro
uGUI
28
設定・変更は即座に反映される
29
④ この素晴らしい文字に演出を
30
④ この素晴らしい文字に演出を
31
Lightからの影響を受けるオプションも
32
⑤ タグによるリッチテキスト制御
33
⑤ タグによるリッチテキスト制御
• 太字
• イタリック
• アンダーライン
• 取り消し線
• 文字の大きさ
• マージン
• ハイライト
• アイコン表示
34
文字にアイコンを埋め込むことも出来る
35
自作タグ
① 拡大してもフォントが滲まない
② 様々なレイアウト調整機能
③ 文字に表情を付ける効果が良い
④ 文字に凹凸感のある演出
⑤ タグによるリッチテキスト制御
すごいぞTextMeshPro!
どうやって使うの?
38
39
フォント Text Mesh
コンポーネント
1 2 3
変換 登録
Font Asset
40
ゲームアプリの数学@GREE GameDevelopers' Meetup
41
x1 x1.5 x2 x3
42
43
ttf/otf
ゲームが使用してる文字をフォントから取得
一杯になったら一旦リセット
uGUIは?
44
フォント Font Asset Text Mesh
コンポーネント
1 2 3
変換 登録
45
46
47
48
49
50
フォント
Font Asset Text Mesh
コンポーネント
1 2 3
変換 登録
51
52
53
フォント Text Mesh
コンポーネント
1 2 3
変換 登録
Font Asset
54
55
56
マテリアルを増やす
57
58
59
60
61
どんな風に使うの?
63
64
65
66
67
68
69
アウトラインで、背景に依存せず綺麗に見える
左の桁が前面に表示される
70
71
72
73
1
2
3
74
75
76
uGUIとText Mesh Proの使い分け
78
VS
フォントテクスチャの再構築による
スパイクが無い
ズームしても輪郭が綺麗
事前に使用する文字を登録する必要がある
解像度が一致してれば綺麗
ダイナミックフォント対応
(フットプリントが最小限)
フォント更新時(追加時ではない)
にスパイクが起こる
uGUI
禁則処理とかアイコン表示が出来る
既にUGUIで作ってるなら…
TextMeshProReplacerReplace box with image
https://github.com/jackisgames/TextMeshProReplacer
81
Q&A
フォント協力:モリサワ

More Related Content

What's hot

その素敵なUI基盤を目指して・・・
その素敵なUI基盤を目指して・・・その素敵なUI基盤を目指して・・・
その素敵なUI基盤を目指して・・・KLab Inc. / Tech
 
【Unity道場スペシャル 2017大阪】トゥーンシェーダー・マニアクス2 〜ユニティちゃんトゥーンシェーダー2.0徹底解説〜
【Unity道場スペシャル 2017大阪】トゥーンシェーダー・マニアクス2 〜ユニティちゃんトゥーンシェーダー2.0徹底解説〜【Unity道場スペシャル 2017大阪】トゥーンシェーダー・マニアクス2 〜ユニティちゃんトゥーンシェーダー2.0徹底解説〜
【Unity道場スペシャル 2017大阪】トゥーンシェーダー・マニアクス2 〜ユニティちゃんトゥーンシェーダー2.0徹底解説〜Unity Technologies Japan K.K.
 
第一回リグナイト『リガーアニメーター座談会その①』資料
第一回リグナイト『リガーアニメーター座談会その①』資料第一回リグナイト『リガーアニメーター座談会その①』資料
第一回リグナイト『リガーアニメーター座談会その①』資料BACKBONE-studio
 
シェーダーを活用した3Dライブ演出のアップデート ~『ラブライブ!スクールアイドルフェスティバル ALL STARS』(スクスタ)の開発事例~​
シェーダーを活用した3Dライブ演出のアップデート ~『ラブライブ!スクールアイドルフェスティバル ALL STARS』(スクスタ)の開発事例~​シェーダーを活用した3Dライブ演出のアップデート ~『ラブライブ!スクールアイドルフェスティバル ALL STARS』(スクスタ)の開発事例~​
シェーダーを活用した3Dライブ演出のアップデート ~『ラブライブ!スクールアイドルフェスティバル ALL STARS』(スクスタ)の開発事例~​KLab Inc. / Tech
 
Unity道場08「絵づくりの基礎」ライティング虎の巻
Unity道場08「絵づくりの基礎」ライティング虎の巻Unity道場08「絵づくりの基礎」ライティング虎の巻
Unity道場08「絵づくりの基礎」ライティング虎の巻小林 信行
 
ゲームの仕様書を書こうまとめ
ゲームの仕様書を書こうまとめゲームの仕様書を書こうまとめ
ゲームの仕様書を書こうまとめSugimoto Chizuru
 
そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 1 <Shader Compile, PSO Cache編>
  そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 1 <Shader Compile, PSO Cache編>  そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 1 <Shader Compile, PSO Cache編>
そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 1 <Shader Compile, PSO Cache編>エピック・ゲームズ・ジャパン Epic Games Japan
 
複数人でのUnity開発ノウハウ
複数人でのUnity開発ノウハウ複数人でのUnity開発ノウハウ
複数人でのUnity開発ノウハウYasuyuki Niwa
 
Unityアニメーションシステムの 今と未来の話
Unityアニメーションシステムの 今と未来の話Unityアニメーションシステムの 今と未来の話
Unityアニメーションシステムの 今と未来の話Unity Technologies Japan K.K.
 
GUILTY GEAR Xrd開発スタッフが送るスキニングのためのモデリング TIPS
GUILTY GEAR Xrd開発スタッフが送るスキニングのためのモデリング TIPSGUILTY GEAR Xrd開発スタッフが送るスキニングのためのモデリング TIPS
GUILTY GEAR Xrd開発スタッフが送るスキニングのためのモデリング TIPSARC SYSTEM WORKS
 

What's hot (20)

その素敵なUI基盤を目指して・・・
その素敵なUI基盤を目指して・・・その素敵なUI基盤を目指して・・・
その素敵なUI基盤を目指して・・・
 
【Unity道場スペシャル 2017大阪】トゥーンシェーダー・マニアクス2 〜ユニティちゃんトゥーンシェーダー2.0徹底解説〜
【Unity道場スペシャル 2017大阪】トゥーンシェーダー・マニアクス2 〜ユニティちゃんトゥーンシェーダー2.0徹底解説〜【Unity道場スペシャル 2017大阪】トゥーンシェーダー・マニアクス2 〜ユニティちゃんトゥーンシェーダー2.0徹底解説〜
【Unity道場スペシャル 2017大阪】トゥーンシェーダー・マニアクス2 〜ユニティちゃんトゥーンシェーダー2.0徹底解説〜
 
猫でも分かるUMG
猫でも分かるUMG猫でも分かるUMG
猫でも分かるUMG
 
Nintendo Switch『OCTOPATH TRAVELER』はこうして作られた
Nintendo Switch『OCTOPATH TRAVELER』はこうして作られたNintendo Switch『OCTOPATH TRAVELER』はこうして作られた
Nintendo Switch『OCTOPATH TRAVELER』はこうして作られた
 
第一回リグナイト『リガーアニメーター座談会その①』資料
第一回リグナイト『リガーアニメーター座談会その①』資料第一回リグナイト『リガーアニメーター座談会その①』資料
第一回リグナイト『リガーアニメーター座談会その①』資料
 
シェーダーを活用した3Dライブ演出のアップデート ~『ラブライブ!スクールアイドルフェスティバル ALL STARS』(スクスタ)の開発事例~​
シェーダーを活用した3Dライブ演出のアップデート ~『ラブライブ!スクールアイドルフェスティバル ALL STARS』(スクスタ)の開発事例~​シェーダーを活用した3Dライブ演出のアップデート ~『ラブライブ!スクールアイドルフェスティバル ALL STARS』(スクスタ)の開発事例~​
シェーダーを活用した3Dライブ演出のアップデート ~『ラブライブ!スクールアイドルフェスティバル ALL STARS』(スクスタ)の開発事例~​
 
Unity道場08「絵づくりの基礎」ライティング虎の巻
Unity道場08「絵づくりの基礎」ライティング虎の巻Unity道場08「絵づくりの基礎」ライティング虎の巻
Unity道場08「絵づくりの基礎」ライティング虎の巻
 
メカアクションゲーム『DAEMON X MACHINA』 信念と血と鋼鉄の開発事例
メカアクションゲーム『DAEMON X MACHINA』 信念と血と鋼鉄の開発事例メカアクションゲーム『DAEMON X MACHINA』 信念と血と鋼鉄の開発事例
メカアクションゲーム『DAEMON X MACHINA』 信念と血と鋼鉄の開発事例
 
[CEDEC2017] UE4プロファイリングツール総おさらい(グラフィクス編)
[CEDEC2017] UE4プロファイリングツール総おさらい(グラフィクス編)[CEDEC2017] UE4プロファイリングツール総おさらい(グラフィクス編)
[CEDEC2017] UE4プロファイリングツール総おさらい(グラフィクス編)
 
ゲームの仕様書を書こうまとめ
ゲームの仕様書を書こうまとめゲームの仕様書を書こうまとめ
ゲームの仕様書を書こうまとめ
 
そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 1 <Shader Compile, PSO Cache編>
  そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 1 <Shader Compile, PSO Cache編>  そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 1 <Shader Compile, PSO Cache編>
そう、UE4ならね。あなたのモバイルゲームをより快適にする沢山の冴えたやり方について Part 1 <Shader Compile, PSO Cache編>
 
複数人でのUnity開発ノウハウ
複数人でのUnity開発ノウハウ複数人でのUnity開発ノウハウ
複数人でのUnity開発ノウハウ
 
猫でも分かるUE4のポストプロセスを使った演出・絵作り
猫でも分かるUE4のポストプロセスを使った演出・絵作り猫でも分かるUE4のポストプロセスを使った演出・絵作り
猫でも分かるUE4のポストプロセスを使った演出・絵作り
 
Unityアニメーションシステムの 今と未来の話
Unityアニメーションシステムの 今と未来の話Unityアニメーションシステムの 今と未来の話
Unityアニメーションシステムの 今と未来の話
 
猫でも分かる Control Rig UE4.25 版
猫でも分かる Control Rig UE4.25 版猫でも分かる Control Rig UE4.25 版
猫でも分かる Control Rig UE4.25 版
 
GUILTY GEAR Xrd開発スタッフが送るスキニングのためのモデリング TIPS
GUILTY GEAR Xrd開発スタッフが送るスキニングのためのモデリング TIPSGUILTY GEAR Xrd開発スタッフが送るスキニングのためのモデリング TIPS
GUILTY GEAR Xrd開発スタッフが送るスキニングのためのモデリング TIPS
 
豚×京都 ~UE4でなろう破壊神~ (UE4 VFX Art Dive)
豚×京都 ~UE4でなろう破壊神~ (UE4 VFX Art Dive)豚×京都 ~UE4でなろう破壊神~ (UE4 VFX Art Dive)
豚×京都 ~UE4でなろう破壊神~ (UE4 VFX Art Dive)
 
初心者向け UE4 映像制作での シーケンサー と Movie Render Queue の使い方
初心者向け UE4 映像制作での シーケンサー と Movie Render Queue の使い方初心者向け UE4 映像制作での シーケンサー と Movie Render Queue の使い方
初心者向け UE4 映像制作での シーケンサー と Movie Render Queue の使い方
 
UE4で学ぶ水中表現(UE4 Environment Art Dive)
UE4で学ぶ水中表現(UE4 Environment Art Dive)UE4で学ぶ水中表現(UE4 Environment Art Dive)
UE4で学ぶ水中表現(UE4 Environment Art Dive)
 
UE4で作成するUIと最適化手法
UE4で作成するUIと最適化手法UE4で作成するUIと最適化手法
UE4で作成するUIと最適化手法
 

Viewers also liked

【Unity道場スペシャル 2017京都】乱数完全マスター 京都編
【Unity道場スペシャル 2017京都】乱数完全マスター 京都編【Unity道場スペシャル 2017京都】乱数完全マスター 京都編
【Unity道場スペシャル 2017京都】乱数完全マスター 京都編Unity Technologies Japan K.K.
 
【Unity道場スペシャル 2017京都】トゥーンシェーダー・マニアクス2
【Unity道場スペシャル 2017京都】トゥーンシェーダー・マニアクス2【Unity道場スペシャル 2017京都】トゥーンシェーダー・マニアクス2
【Unity道場スペシャル 2017京都】トゥーンシェーダー・マニアクス2Unity Technologies Japan K.K.
 
【Unity道場スペシャル 2017京都】最適化をする前に覚えておきたい技術
【Unity道場スペシャル 2017京都】最適化をする前に覚えておきたい技術【Unity道場スペシャル 2017京都】最適化をする前に覚えておきたい技術
【Unity道場スペシャル 2017京都】最適化をする前に覚えておきたい技術Unity Technologies Japan K.K.
 
【Unity道場スペシャル 2017札幌】乱数完全マスター
【Unity道場スペシャル 2017札幌】乱数完全マスター 【Unity道場スペシャル 2017札幌】乱数完全マスター
【Unity道場スペシャル 2017札幌】乱数完全マスター Unity Technologies Japan K.K.
 
【Unity道場スペシャル 2017札幌】おっさんでも美少女になれる?!VRアイドルの作り方
【Unity道場スペシャル 2017札幌】おっさんでも美少女になれる?!VRアイドルの作り方【Unity道場スペシャル 2017札幌】おっさんでも美少女になれる?!VRアイドルの作り方
【Unity道場スペシャル 2017札幌】おっさんでも美少女になれる?!VRアイドルの作り方Unity Technologies Japan K.K.
 
【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-
【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-
【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-Unity Technologies Japan K.K.
 
【Unity道場スペシャル 2017幕張】大学、専門学校でunityの講座をおこなった感触
【Unity道場スペシャル 2017幕張】大学、専門学校でunityの講座をおこなった感触【Unity道場スペシャル 2017幕張】大学、専門学校でunityの講座をおこなった感触
【Unity道場スペシャル 2017幕張】大学、専門学校でunityの講座をおこなった感触Unity Technologies Japan K.K.
 
【Unity道場スペシャル 2017幕張】unityで学習するゲーム制作
【Unity道場スペシャル 2017幕張】unityで学習するゲーム制作【Unity道場スペシャル 2017幕張】unityで学習するゲーム制作
【Unity道場スペシャル 2017幕張】unityで学習するゲーム制作Unity Technologies Japan K.K.
 
【Unity道場スペシャル 2017札幌】超初心者向け!Unityのオーディオ機能を使ってみよう
【Unity道場スペシャル 2017札幌】超初心者向け!Unityのオーディオ機能を使ってみよう【Unity道場スペシャル 2017札幌】超初心者向け!Unityのオーディオ機能を使ってみよう
【Unity道場スペシャル 2017札幌】超初心者向け!Unityのオーディオ機能を使ってみようUnity Technologies Japan K.K.
 

Viewers also liked (9)

【Unity道場スペシャル 2017京都】乱数完全マスター 京都編
【Unity道場スペシャル 2017京都】乱数完全マスター 京都編【Unity道場スペシャル 2017京都】乱数完全マスター 京都編
【Unity道場スペシャル 2017京都】乱数完全マスター 京都編
 
【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札幌】乱数完全マスター
 
【Unity道場スペシャル 2017札幌】おっさんでも美少女になれる?!VRアイドルの作り方
【Unity道場スペシャル 2017札幌】おっさんでも美少女になれる?!VRアイドルの作り方【Unity道場スペシャル 2017札幌】おっさんでも美少女になれる?!VRアイドルの作り方
【Unity道場スペシャル 2017札幌】おっさんでも美少女になれる?!VRアイドルの作り方
 
【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-
【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-
【Unity道場スペシャル 2017札幌】最適化をする前に覚えておきたい技術 -札幌編-
 
【Unity道場スペシャル 2017幕張】大学、専門学校でunityの講座をおこなった感触
【Unity道場スペシャル 2017幕張】大学、専門学校でunityの講座をおこなった感触【Unity道場スペシャル 2017幕張】大学、専門学校でunityの講座をおこなった感触
【Unity道場スペシャル 2017幕張】大学、専門学校でunityの講座をおこなった感触
 
【Unity道場スペシャル 2017幕張】unityで学習するゲーム制作
【Unity道場スペシャル 2017幕張】unityで学習するゲーム制作【Unity道場スペシャル 2017幕張】unityで学習するゲーム制作
【Unity道場スペシャル 2017幕張】unityで学習するゲーム制作
 
【Unity道場スペシャル 2017札幌】超初心者向け!Unityのオーディオ機能を使ってみよう
【Unity道場スペシャル 2017札幌】超初心者向け!Unityのオーディオ機能を使ってみよう【Unity道場スペシャル 2017札幌】超初心者向け!Unityのオーディオ機能を使ってみよう
【Unity道場スペシャル 2017札幌】超初心者向け!Unityのオーディオ機能を使ってみよう
 

More from Unity Technologies Japan K.K.

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

Recently uploaded

プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価sugiuralab
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directoryosamut
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
プレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールプレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールsugiuralab
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 

Recently uploaded (8)

プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
 
プレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールプレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツール
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 

【Unity道場スペシャル 2017札幌】カッコいい文字を使おう、そうtext meshならね

Editor's Notes

  1. 自己紹介を。 自分はユニティテクノロジーズジャパンの山村と言います フィールドエンジニアをしながら、Unityのエヴァンジェリストをしています。
  2. フォント、変えてますか? 文字には拘ってますか?
  3. これはUnityの提供する最も雑なアセットですが、UIも雑ですがフォントも適当に貼られてます。 物にもよりけりですが、割と初めの方はフォントに意識を割かれる事が少なく、そのままArialが使われる事も多いです。
  4. しかし、 フォントには大きな可能性がある
  5. フォントはゲームの雰囲気を伝える
  6. また、もう一つ重要な要素は、読みやすいフォントとカッコいいフォントがあるという事です。 左上は見た目が良い文字です。ただ、見た目にキレイなフォントと、読みやすいフォントという物があります。
  7. とりあえずの大分類はコレ。 読みやすいものは明朝、認識しやすい物はゴシック
  8. 文字は記号である。 同じ言語権の人に限られますが、内容を一瞬で誤解なく連絡できる魔法のツールです。 言語によっては複数文字で表現するものもあります。
  9. 文字の配置で受ける印象も変わる デザインの本とかを呼んでみると、タイポグラフィ、 文字の配置方法で画面の印象を大きく変化させるテクニックが多く紹介されています。
  10. 複数のフォントを無理やり使うと、チグハグな画面が作られる。
  11. フォントは単なる「言葉を伝えるもの」という物だけでなく、 画面やゲームの雰囲気を作ったり、レイアウトしたり色々と良い。 さぁ、みんな使おう! となる所ですが、
  12. ただ、Unityの伝統的なUI機能は単純に文字を出すだけで満足しており、 フォントの力を100%引き出す事が出来ない。
  13. ということで、今回フォントの魅力を100%出しやすくするアセットである、 Text Mesh Proを紹介しよう。
  14. Text Mesh Pro
  15. Text Mesh Proには5つの特徴
  16. 拡大しても滲まない
  17. これはuGUIのテキストとTextMeshProのテキストを拡大スケールした時に分かりやすく差が出る。 uGUIのフォント解像度は画面解像度からよく見える物を選択するので、大抵の場合は問題とならないが、VRやUIをスケールするようなケースでは、かなりボケてしまう問題が、TextMeshProなら回避出来る。
  18. 沢山のレイアウト調整機能 例えばカーニングしたり、
  19. 範囲内で文字が埋まるように、等間隔で並べたり
  20. 禁則処理を行ったり。
  21. アウトライン・色の滲み・表面模様等の文字に表情を付ける効果
  22. 特にアウトラインは素晴らしい。 uGUI、Unity標準のUIシステムのアウトラインは太くすると変なシルエットが出てしまうが、 TextMeshProはかなり綺麗に出る。あとパフォーマンスが良い。
  23. 変更したら即座に反映される
  24. 身の回りのテキスト表現を見てみると、結構あるのが こういった文字の凹凸感を表現するエフェクト。
  25. 単純な方角のみだけでなく、実際にライトの影響を受けて凹凸表現を行うオプションもある。
  26. リッチテキストによる制御
  27. Spriteを登録すれば、アイコンも使える
  28. 独自にタグを作る事も出来ます。便利便利
  29. ここが凄いText Mesh Pro! どうです?少し興味が出てきたり…?
  30. まぁ色々と機能がある事は分かった。じゃぁ、実際どうやって使えば良いの?
  31. TextMeshProはStandardAssetsや基本機能としては含まれていないので、AssetStoreから入手します。
  32. 作業の流れは3つのステップ。 基本的にText Mesh Proは、uGUIと比較して、少し面倒な手順が必要になります。 フォントをTextMeshAssetに変換(利用するフォントを登録) TextMeshのコンポーネントにTextMeshAssetを登録 使用する材質を選択 使う
  33. 何故面倒な事をしてるのかという話ですが、 Text Mesh ProはUnityのUIシステムと異なり、ダイナミックフォントではなくDistance Fieldという特別なフォーマットを使用して文字を表現しています。
  34. Text Mesh Proがズームしても滑らかなのは、これが理由です。 他にもアウトライン等にも活用してるっぽいですが。
  35. ただ、この計算はかなり負荷の高い事前計算が必要になるため、Text Mesh Proではフォントを利用する前に使用するフォントの選択や、データの変換が必要です。
  36. ではuGUIは?
  37. 話を戻しまして、実際に操作をやってみます。 まず、フォントの変換から。 今回はせっかくなので、モリサワさんのフォントを変換してみます。
  38. フォントコンバーターを表示し、フォントを選択します。
  39. 後は使用するテキストの範囲を入力します。 日本語の範囲を入力する場合は、
  40. レンジを選択して、日本語の文字コードを含めます。 含める文字コードの範囲は、Text Mesh Pro+日本語とかで検索すれば、素晴らしい記事が見つかります。
  41. コンバート、あっという間に終わりました。 これ5,000倍速です。 ちなみに、日本語の殆どを入れてるせいで時間がかかります。最低限に抑えれば、本当に一瞬で終わります。
  42. コンバート完了したら、Font Assetを保存します。
  43. これで事前準備が完了しました。 後はText Mesh Pro(3D Text)や、Text Mesh Pro(uGUI対応)に変換して使用します。 例えばuGUI対応版の場合、こんな感じ。
  44. UIを作って、FontAssetを先程作成した物に差し替えるだけです。
  45. 後はテキストをセットすれば文字が表示されます。
  46. 後は使うだけではあります
  47. が、一つだけややこしい問題があります。 TextMeshProのエフェクトはマテリアルに格納されています。このマテリアルを切り替える事でエフェクトを表現しています
  48. このマテリアル、生成時は一つしか作られません。 そのため、一つ変更すれば全てのフォントが影響を受けてしまいます。
  49. ので、コレマテリアルを増やして複数種類のエフェクトを持てるようにします。
  50. 上のテキストのエフェクトだけを書き換えたい
  51. マテリアルを増やすには、マテリアルのCreate Material Presetという機能を使用します。
  52. マテリアルを増やせば、TextMeshProが指定のフォントに対して使用できるエフェクトの数が増えます。 実際に上と下のエフェクトの種類を分けて
  53. かたっぽだけにエフェクトを加えます。 こんな感じで、ユニークなエフェクトが必要な場合はマテリアルを量産します。
  54. さて、準備は整いました。 実際に色々と試してみましょう。
  55. さっそく使っていきましょう。 そこで気になるのが、何処に何をどんなふうに使うのか…という話です。 今回3つ考えてみました。
  56. 例えばボタンのUIを作ってみます。 こんな酷いUIではなく、少しの工夫を加えたものです。
  57. 難しい事はありません、基本的にはTextMeshやuGUIのTextと同じように使えます。
  58. まずはUIを用意して、TextMeshProをTextの変わりに登録します。
  59. フォントを選択します。 どんなフォントを選択するのかはゲームに寄りますが、ボタンなら読みやすいフォントより見た目の良いフォントを選択しても良いかもしれません。
  60. 後はUIにうっすらと影をつけちゃったりしたり色々です。
  61. 見出し用のフォント等もどんどん使って良さそうです。 昨今のゲームUIを見てると、アウトラインが付いてる事が多いです。場合によってはブラーもかかっています。
  62. ゲーム内の文字。特に値が変動する数値はTextureが少し面倒な部分なので、出来ればフォントで行きたい。 <<クリック>> また、読むことは出来ますが、背景の色が固定では無いので、アウトラインが欲しい こちらはよく動くオブジェクトになるハズなので、uGUIではなく3D Textベースがオススメです。
  63. という事で、アウトラインを付けます。 アウトラインは内側に伸びていくので、FaceのDilateで文字自体を広げてやると割とバランスが取れます。
  64. それと、文字と文字の間を詰めて表示します。 この際、文字の表示順を桁数が多い順に設定しておくと良いです。
  65. あと、せっかくなのでタイトルロゴ的なものもやってみます。 映画のパンフレットとか見てみると、意外とコレ多いんですよね。 もっとロゴロゴしてるかと思いましたが、そうでもなく。
  66. まずは文字の幅を調整します。 今回調整するのは、2つのアプローチで行っています。 一つはspacing optionで文字間の位置を調整 もう一つがmspaceタグでより文字の間を詰める
  67. ちなみに、フォントがカーニングの設定を持っている場合、Font Asset作る時にカーニング設定が作られます。一応後付でも可能
  68. 一応後付でカーニング設定…つまり、指定の順番でフォントが並んだら文字列の間を詰める処理は追加出来るみたいです。
  69. そしてLightingの項目で立体感を与えました。
  70. 最後にText Mesh ProとuGUIの使い分けについてです。
  71. 実際、TextMeshProの話をするとどうしても気になるのが、「どちらが良いの?」 この結論としては、ケースバイケースです。
  72. Text Mesh ProとuGUIの一番の明確な違いは、フォントがダイナミックかどうか。 ダイナミックなフォントを利用したい場合は、uGUIに軍配が上がる。 含まれる文字が既に決まっているならば、Text Mesh Proはすごく有効
  73. TextMesh Replacer、一気にuGUIのテキストをTextMeshProに変換する
  74. もし、この非常に面白い機能のTextMesh Pro、 さらに興味があったら、この2つのスライドを参考にしてみて下さい。