SlideShare ist ein Scribd-Unternehmen logo
1 von 75
1
文字でカッコいい画面を作ろう。
そう…TextMesh Proならね
2
ユニティ・テクノロジーズ・ジャパン
山村 達彦
@tsubaki_t1
フォント、使ってますか?
4
5
フォントは意外と重要
6
ゲームの雰囲気を伝える
7
文字は一文字で意味を伝える
8
文字のレイアウトで見栄えが変わる
9
文字…フォント…大事…大事…
10
uGUIでは役不足
11
Text Mesh Proって どんな事が出来るの?
13
TextMeshProの凄い所
14
① 拡大してもフォントが滲まない
15
① 拡大してもフォントが滲まない
16
uGUI
TextMeshPro
uGUI TextMeshPro
17
② 様々なレイアウト調整機能
18
② 様々なレイアウト調整機能
カーニング有
カーニング無
19
20
21
③ 文字に表情を付ける効果が良い
22
③ 文字に表情を付ける効果が良い
フワっとした影 アウトライン グロー 模様
23
設定・変更は即座に反映される
24
④ この素晴らしい文字に演出を
25
④ この素晴らしい文字に演出を
26
Lightからの影響を受けるオプションも
27
⑤ タグによるリッチテキスト制御
28
⑤ タグによるリッチテキスト制御
• 太字
• イタリック
• アンダーライン
• 取り消し線
• 文字の大きさ
• マージン
• ハイライト
• アイコン表示
29
文字にアイコンを埋め込むことも出来る
30
① 拡大してもフォントが滲まない
② 様々なレイアウト調整機能
③ 文字に表情を付ける効果が良い
④ この素晴らしい文字に演出を
⑤ タグによるリッチテキスト制御
すごいぞTextMeshPro!
どうやって使うの?
33
34
フォント Text Mesh
コンポーネント
1 2 3
変換 登録
Font Asset
35
ゲームアプリの数学@GREE GameDevelopers' Meetup
36
x1 x1.5 x2 x3
37
38
フォント Font Asset Text Mesh
コンポーネント
1 2 3
変換 登録
39
40
41
42
43
44
フォント
Font Asset Text Mesh
コンポーネント
1 2 3
変換 登録
45
46
47
フォント Text Mesh
コンポーネント
1 2 3
変換 登録
Font Asset
48
49
50
マテリアルを増やす
51
52
53
54
55
どんな風に使うの?
57
58
59
60
61
62
63
64
65
66
67
1
2
3
68
69
70
uGUIとText Mesh Proの使い分け
72
VS
複数のフォントサイズ時に有利
フォントテクスチャの再構築が無い
ズーム時にエッジが綺麗
事前に使用する文字を登録する必要がある
解像度が一致してれば綺麗
ダイナミックフォント対応
フォント更新時(追加時ではない)
にスパイクが起こる
uGUI
禁則処理とかアイコン表示が出来る
既にUGUIで作ってるなら…
TextMeshProReplacerReplace box with image
https://github.com/jackisgames/TextMeshProReplacer
Q&A

Weitere ähnliche Inhalte

Was ist angesagt?

初心者がEQSやってみた
初心者がEQSやってみた初心者がEQSやってみた
初心者がEQSやってみたgoolee
 
UE4 アセットロード周り-アセット参照調査-
UE4 アセットロード周り-アセット参照調査-UE4 アセットロード周り-アセット参照調査-
UE4 アセットロード周り-アセット参照調査-com044
 
マテリアルとマテリアルインスタンスの仕組みと問題点の共有 (Epic Games Japan: 篠山範明) #UE4DD
マテリアルとマテリアルインスタンスの仕組みと問題点の共有 (Epic Games Japan: 篠山範明) #UE4DDマテリアルとマテリアルインスタンスの仕組みと問題点の共有 (Epic Games Japan: 篠山範明) #UE4DD
マテリアルとマテリアルインスタンスの仕組みと問題点の共有 (Epic Games Japan: 篠山範明) #UE4DDエピック・ゲームズ・ジャパン Epic Games Japan
 
UE4プログラマー勉強会 in 大阪 -エンジンの内部挙動について
UE4プログラマー勉強会 in 大阪 -エンジンの内部挙動についてUE4プログラマー勉強会 in 大阪 -エンジンの内部挙動について
UE4プログラマー勉強会 in 大阪 -エンジンの内部挙動についてcom044
 
UE4×Switchで60FPSの(ネットワーク)対戦アクションをなんとかして作る! | UNREAL FEST EXTREME 2020 WINTER
UE4×Switchで60FPSの(ネットワーク)対戦アクションをなんとかして作る!  | UNREAL FEST EXTREME 2020 WINTERUE4×Switchで60FPSの(ネットワーク)対戦アクションをなんとかして作る!  | UNREAL FEST EXTREME 2020 WINTER
UE4×Switchで60FPSの(ネットワーク)対戦アクションをなんとかして作る! | UNREAL FEST EXTREME 2020 WINTERエピック・ゲームズ・ジャパン Epic Games Japan
 
【Unity道場 博多スペシャル 2017】Textmesh proを使いこなす
【Unity道場 博多スペシャル 2017】Textmesh proを使いこなす【Unity道場 博多スペシャル 2017】Textmesh proを使いこなす
【Unity道場 博多スペシャル 2017】Textmesh proを使いこなすUnity Technologies Japan K.K.
 
UE4のマテリアルを もっと楽しもう!~マテリアルでぐっと広がるリアルタイムCG表現の幅~
UE4のマテリアルを もっと楽しもう!~マテリアルでぐっと広がるリアルタイムCG表現の幅~ UE4のマテリアルを もっと楽しもう!~マテリアルでぐっと広がるリアルタイムCG表現の幅~
UE4のマテリアルを もっと楽しもう!~マテリアルでぐっと広がるリアルタイムCG表現の幅~ エピック・ゲームズ・ジャパン Epic Games Japan
 
Editor Utility Widgetで色々便利にしてみた。
Editor Utility Widgetで色々便利にしてみた。Editor Utility Widgetで色々便利にしてみた。
Editor Utility Widgetで色々便利にしてみた。IndieusGames
 

Was ist angesagt? (20)

初心者がEQSやってみた
初心者がEQSやってみた初心者がEQSやってみた
初心者がEQSやってみた
 
UE4のローカライズ機能紹介 (UE4 Localization Deep Dive)
UE4のローカライズ機能紹介 (UE4 Localization Deep Dive)UE4のローカライズ機能紹介 (UE4 Localization Deep Dive)
UE4のローカライズ機能紹介 (UE4 Localization Deep Dive)
 
UE4 アセットロード周り-アセット参照調査-
UE4 アセットロード周り-アセット参照調査-UE4 アセットロード周り-アセット参照調査-
UE4 アセットロード周り-アセット参照調査-
 
60fpsアクションを実現する秘訣を伝授 基礎編
60fpsアクションを実現する秘訣を伝授 基礎編60fpsアクションを実現する秘訣を伝授 基礎編
60fpsアクションを実現する秘訣を伝授 基礎編
 
マテリアルとマテリアルインスタンスの仕組みと問題点の共有 (Epic Games Japan: 篠山範明) #UE4DD
マテリアルとマテリアルインスタンスの仕組みと問題点の共有 (Epic Games Japan: 篠山範明) #UE4DDマテリアルとマテリアルインスタンスの仕組みと問題点の共有 (Epic Games Japan: 篠山範明) #UE4DD
マテリアルとマテリアルインスタンスの仕組みと問題点の共有 (Epic Games Japan: 篠山範明) #UE4DD
 
UE4でマルチプレイヤーゲームを作ろう
UE4でマルチプレイヤーゲームを作ろうUE4でマルチプレイヤーゲームを作ろう
UE4でマルチプレイヤーゲームを作ろう
 
UE4プログラマー勉強会 in 大阪 -エンジンの内部挙動について
UE4プログラマー勉強会 in 大阪 -エンジンの内部挙動についてUE4プログラマー勉強会 in 大阪 -エンジンの内部挙動について
UE4プログラマー勉強会 in 大阪 -エンジンの内部挙動について
 
初心者向け UE4 映像制作での シーケンサー と Movie Render Queue の使い方
初心者向け UE4 映像制作での シーケンサー と Movie Render Queue の使い方初心者向け UE4 映像制作での シーケンサー と Movie Render Queue の使い方
初心者向け UE4 映像制作での シーケンサー と Movie Render Queue の使い方
 
UE4×Switchで60FPSの(ネットワーク)対戦アクションをなんとかして作る! | UNREAL FEST EXTREME 2020 WINTER
UE4×Switchで60FPSの(ネットワーク)対戦アクションをなんとかして作る!  | UNREAL FEST EXTREME 2020 WINTERUE4×Switchで60FPSの(ネットワーク)対戦アクションをなんとかして作る!  | UNREAL FEST EXTREME 2020 WINTER
UE4×Switchで60FPSの(ネットワーク)対戦アクションをなんとかして作る! | UNREAL FEST EXTREME 2020 WINTER
 
UE4で作成するUIと最適化手法
UE4で作成するUIと最適化手法UE4で作成するUIと最適化手法
UE4で作成するUIと最適化手法
 
UE4におけるレベル制作事例
UE4におけるレベル制作事例  UE4におけるレベル制作事例
UE4におけるレベル制作事例
 
【Unity道場 博多スペシャル 2017】Textmesh proを使いこなす
【Unity道場 博多スペシャル 2017】Textmesh proを使いこなす【Unity道場 博多スペシャル 2017】Textmesh proを使いこなす
【Unity道場 博多スペシャル 2017】Textmesh proを使いこなす
 
UE4における大規模レベル実装ワークフローとブループリント活用事例
UE4における大規模レベル実装ワークフローとブループリント活用事例UE4における大規模レベル実装ワークフローとブループリント活用事例
UE4における大規模レベル実装ワークフローとブループリント活用事例
 
Unreal Engine 4.27 ノンゲーム向け新機能まとめ
Unreal Engine 4.27 ノンゲーム向け新機能まとめUnreal Engine 4.27 ノンゲーム向け新機能まとめ
Unreal Engine 4.27 ノンゲーム向け新機能まとめ
 
UE4のマテリアルを もっと楽しもう!~マテリアルでぐっと広がるリアルタイムCG表現の幅~
UE4のマテリアルを もっと楽しもう!~マテリアルでぐっと広がるリアルタイムCG表現の幅~ UE4のマテリアルを もっと楽しもう!~マテリアルでぐっと広がるリアルタイムCG表現の幅~
UE4のマテリアルを もっと楽しもう!~マテリアルでぐっと広がるリアルタイムCG表現の幅~
 
[CEDEC2018] UE4アニメーションシステム総おさらい
[CEDEC2018] UE4アニメーションシステム総おさらい[CEDEC2018] UE4アニメーションシステム総おさらい
[CEDEC2018] UE4アニメーションシステム総おさらい
 
Editor Utility Widgetで色々便利にしてみた。
Editor Utility Widgetで色々便利にしてみた。Editor Utility Widgetで色々便利にしてみた。
Editor Utility Widgetで色々便利にしてみた。
 
Online MultiPlay Game Design
Online MultiPlay Game DesignOnline MultiPlay Game Design
Online MultiPlay Game Design
 
カリギュラオーバードーズにおけるUE4へのデータ移植の手引き
カリギュラオーバードーズにおけるUE4へのデータ移植の手引きカリギュラオーバードーズにおけるUE4へのデータ移植の手引き
カリギュラオーバードーズにおけるUE4へのデータ移植の手引き
 
Fortniteを支える技術
Fortniteを支える技術Fortniteを支える技術
Fortniteを支える技術
 

Andere mochten auch

Substanceテクスチャワークフロー XXX編
Substanceテクスチャワークフロー XXX編Substanceテクスチャワークフロー XXX編
Substanceテクスチャワークフロー XXX編Satoshi Kodaira
 
【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.
 
【Unite 2017 Tokyo】インスタンシングを用いた美麗なグラフィックの実現方法
【Unite 2017 Tokyo】インスタンシングを用いた美麗なグラフィックの実現方法【Unite 2017 Tokyo】インスタンシングを用いた美麗なグラフィックの実現方法
【Unite 2017 Tokyo】インスタンシングを用いた美麗なグラフィックの実現方法Unite2017Tokyo
 
【Unite 2017 Tokyo】スマートフォンでどこまでできる?3Dゲームをぐりぐり動かすテクニック講座
【Unite 2017 Tokyo】スマートフォンでどこまでできる?3Dゲームをぐりぐり動かすテクニック講座【Unite 2017 Tokyo】スマートフォンでどこまでできる?3Dゲームをぐりぐり動かすテクニック講座
【Unite 2017 Tokyo】スマートフォンでどこまでできる?3Dゲームをぐりぐり動かすテクニック講座Unity Technologies Japan K.K.
 
【Unity道場 2017】PlayMakerによる初めてのUnityプログラミング
【Unity道場 2017】PlayMakerによる初めてのUnityプログラミング【Unity道場 2017】PlayMakerによる初めてのUnityプログラミング
【Unity道場 2017】PlayMakerによる初めてのUnityプログラミングUnity Technologies Japan K.K.
 
【Unite 2017 Tokyo】Navmesh完全マスターへの道
【Unite 2017 Tokyo】Navmesh完全マスターへの道【Unite 2017 Tokyo】Navmesh完全マスターへの道
【Unite 2017 Tokyo】Navmesh完全マスターへの道Unity Technologies Japan K.K.
 
【Unite 2017 Tokyo】もっと気軽に、動的なコンテンツ配信を ~アセットバンドルの未来と開発ロードマップ
【Unite 2017 Tokyo】もっと気軽に、動的なコンテンツ配信を ~アセットバンドルの未来と開発ロードマップ【Unite 2017 Tokyo】もっと気軽に、動的なコンテンツ配信を ~アセットバンドルの未来と開発ロードマップ
【Unite 2017 Tokyo】もっと気軽に、動的なコンテンツ配信を ~アセットバンドルの未来と開発ロードマップUnity Technologies Japan K.K.
 

Andere mochten auch (9)

Substanceテクスチャワークフロー XXX編
Substanceテクスチャワークフロー XXX編Substanceテクスチャワークフロー XXX編
Substanceテクスチャワークフロー XXX編
 
【Unity道場 2017】ゲーム開発者のためのタイポグラフィ講座
【Unity道場 2017】ゲーム開発者のためのタイポグラフィ講座【Unity道場 2017】ゲーム開発者のためのタイポグラフィ講座
【Unity道場 2017】ゲーム開発者のためのタイポグラフィ講座
 
【Unity道場 2017】伝える!伝わる!フォント表現入門
【Unity道場 2017】伝える!伝わる!フォント表現入門【Unity道場 2017】伝える!伝わる!フォント表現入門
【Unity道場 2017】伝える!伝わる!フォント表現入門
 
【Unite 2017 Tokyo】インスタンシングを用いた美麗なグラフィックの実現方法
【Unite 2017 Tokyo】インスタンシングを用いた美麗なグラフィックの実現方法【Unite 2017 Tokyo】インスタンシングを用いた美麗なグラフィックの実現方法
【Unite 2017 Tokyo】インスタンシングを用いた美麗なグラフィックの実現方法
 
【Unite 2017 Tokyo】スマートフォンでどこまでできる?3Dゲームをぐりぐり動かすテクニック講座
【Unite 2017 Tokyo】スマートフォンでどこまでできる?3Dゲームをぐりぐり動かすテクニック講座【Unite 2017 Tokyo】スマートフォンでどこまでできる?3Dゲームをぐりぐり動かすテクニック講座
【Unite 2017 Tokyo】スマートフォンでどこまでできる?3Dゲームをぐりぐり動かすテクニック講座
 
【Unity】今日から使えるTimeline
【Unity】今日から使えるTimeline【Unity】今日から使えるTimeline
【Unity】今日から使えるTimeline
 
【Unity道場 2017】PlayMakerによる初めてのUnityプログラミング
【Unity道場 2017】PlayMakerによる初めてのUnityプログラミング【Unity道場 2017】PlayMakerによる初めてのUnityプログラミング
【Unity道場 2017】PlayMakerによる初めてのUnityプログラミング
 
【Unite 2017 Tokyo】Navmesh完全マスターへの道
【Unite 2017 Tokyo】Navmesh完全マスターへの道【Unite 2017 Tokyo】Navmesh完全マスターへの道
【Unite 2017 Tokyo】Navmesh完全マスターへの道
 
【Unite 2017 Tokyo】もっと気軽に、動的なコンテンツ配信を ~アセットバンドルの未来と開発ロードマップ
【Unite 2017 Tokyo】もっと気軽に、動的なコンテンツ配信を ~アセットバンドルの未来と開発ロードマップ【Unite 2017 Tokyo】もっと気軽に、動的なコンテンツ配信を ~アセットバンドルの未来と開発ロードマップ
【Unite 2017 Tokyo】もっと気軽に、動的なコンテンツ配信を ~アセットバンドルの未来と開発ロードマップ
 

Mehr von 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.
 

Mehr von 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ティーチャートレーニングデイ -認定アソシエイト編-
 

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

Hinweis der Redaktion

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