Submit Search
20140530 Unity に於ける Localization のおはなし
5 likes
5,933 views
Mori Tetsuya
2014年05月30日に TechBuzz Space にて開催された Unity 勉強会の資料です。
Engineering
Read more
1 of 39
Download now
Download to read offline
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
More Related Content
PDF
SteamVRさわってみた
c-mitsuba
PDF
RoomAlive - HoloLensに向けていまできること
c-mitsuba
PDF
HoloLens first impression & development
c-mitsuba
PDF
HoloLens FirstImpression v2
c-mitsuba
KEY
プラグインカスタマイズを始めた理由、カスタマイズで良かった点・苦労した点
hibiki443
PDF
蜜葉流 デサインプロセスの基礎 - サトヤくじらが生まれるまで -
c-mitsuba
PDF
WinMR入門
c-mitsuba
PPTX
HoloLensの音声認識を使って対話エージェントからミニ四駆動かした話
Takahiro Miyaura
SteamVRさわってみた
c-mitsuba
RoomAlive - HoloLensに向けていまできること
c-mitsuba
HoloLens first impression & development
c-mitsuba
HoloLens FirstImpression v2
c-mitsuba
プラグインカスタマイズを始めた理由、カスタマイズで良かった点・苦労した点
hibiki443
蜜葉流 デサインプロセスの基礎 - サトヤくじらが生まれるまで -
c-mitsuba
WinMR入門
c-mitsuba
HoloLensの音声認識を使って対話エージェントからミニ四駆動かした話
Takahiro Miyaura
Similar to 20140530 Unity に於ける Localization のおはなし
(13)
PPTX
最新UE4タイトルでのローカライズ事例 (UE4 Localization Deep Dive)
エピック・ゲームズ・ジャパン Epic Games Japan
PDF
Unityとスマートフォンアプリの最適化
COLOPL, Inc.
PDF
20150123 第28回 Unity 勉強会「Unity に於けるビルド自動化のおはなし & 設定管理とリソース管理のおはなし」
Mori Tetsuya
PDF
Unity に於けるモバイルプラットフォーム向けビルド自動化のおはなし
Mori Tetsuya
PPTX
I18n for Your Web application
亮 門屋
PDF
IGDA 日本 SIG-GLOCALIZATION GDC2012報告会
Self Employed
PPTX
Unity * スマートフォン開発で学んだこと
Katsutoshi Makino
PDF
Unityで作るiOSゲームアプリ
keiso watanabe
PDF
Unity に於ける Android ビルド自動化のおはなし - 20141215 第27回 Unity 勉強会
Mori Tetsuya
PDF
できる! Unity 2D (vol.2)
Mori Tetsuya
PDF
土下座パラダイスはこうして生まれた
Takafumi Naito
PDF
Unity に於ける iOS ビルド自動化のおはなし - 20141030 第26回 Unity 勉強会
Mori Tetsuya
PPTX
Creative flow: ソフトウェアローカリゼーションのワークフローと今後
Self Employed
最新UE4タイトルでのローカライズ事例 (UE4 Localization Deep Dive)
エピック・ゲームズ・ジャパン Epic Games Japan
Unityとスマートフォンアプリの最適化
COLOPL, Inc.
20150123 第28回 Unity 勉強会「Unity に於けるビルド自動化のおはなし & 設定管理とリソース管理のおはなし」
Mori Tetsuya
Unity に於けるモバイルプラットフォーム向けビルド自動化のおはなし
Mori Tetsuya
I18n for Your Web application
亮 門屋
IGDA 日本 SIG-GLOCALIZATION GDC2012報告会
Self Employed
Unity * スマートフォン開発で学んだこと
Katsutoshi Makino
Unityで作るiOSゲームアプリ
keiso watanabe
Unity に於ける Android ビルド自動化のおはなし - 20141215 第27回 Unity 勉強会
Mori Tetsuya
できる! Unity 2D (vol.2)
Mori Tetsuya
土下座パラダイスはこうして生まれた
Takafumi Naito
Unity に於ける iOS ビルド自動化のおはなし - 20141030 第26回 Unity 勉強会
Mori Tetsuya
Creative flow: ソフトウェアローカリゼーションのワークフローと今後
Self Employed
Ad
More from Mori Tetsuya
(20)
PDF
GraphView のすゝめ / Introduction of GraphView
Mori Tetsuya
PDF
基盤・設計まわりでしくじってしまった話
Mori Tetsuya
PDF
2020年版 Unity Package Manager 更新点まとめ
Mori Tetsuya
PDF
Unity Development Infrastructure / Unity プロジェクトの開発基盤を大公開
Mori Tetsuya
PDF
Future of UniFlow
Mori Tetsuya
PDF
Clean Architecture for Unity
Mori Tetsuya
PDF
Visual Programming Framework for Unity - UniFlow のご紹介
Mori Tetsuya
PDF
Unity ユーザのための Git ハンズオン #2
Mori Tetsuya
PDF
Unity で Unit な Test を書いてみた
Mori Tetsuya
PDF
Unity 5.3 の In-App Purchase を試してみた
Mori Tetsuya
PDF
AssetBundle (もどき) の作り方
Mori Tetsuya
PDF
Unity meets Kinect -Unity で NUI を扱ってみた- / 2015.06.23 at TechBuzz Space
Mori Tetsuya
PDF
Unity 5 の AssetBundle について (浅く) まとめてみた - 2015/05/22 第31回 Unity 勉強会
Mori Tetsuya
PDF
20150216 Unity Hands-on 「できる!Unity 2D」
Mori Tetsuya
PDF
20140926 NCMB勉強会 #4 - Unity meets SpriteStudio
Mori Tetsuya
PDF
20140829 第24回 Unity 勉強会 - Unity meets SpriteStudio
Mori Tetsuya
PDF
20140822 Swift 勉強会 vol.3 - はぢめての Swift
Mori Tetsuya
PDF
20140711 MySQL Casual Talks vol.6 / 続・Amazon RDS Casual Talks
Mori Tetsuya
PDF
20140618 教育・知育アプリのつくりかた
Mori Tetsuya
PDF
20140314 Unity勉強会 PostProcessBuild のおはなし
Mori Tetsuya
GraphView のすゝめ / Introduction of GraphView
Mori Tetsuya
基盤・設計まわりでしくじってしまった話
Mori Tetsuya
2020年版 Unity Package Manager 更新点まとめ
Mori Tetsuya
Unity Development Infrastructure / Unity プロジェクトの開発基盤を大公開
Mori Tetsuya
Future of UniFlow
Mori Tetsuya
Clean Architecture for Unity
Mori Tetsuya
Visual Programming Framework for Unity - UniFlow のご紹介
Mori Tetsuya
Unity ユーザのための Git ハンズオン #2
Mori Tetsuya
Unity で Unit な Test を書いてみた
Mori Tetsuya
Unity 5.3 の In-App Purchase を試してみた
Mori Tetsuya
AssetBundle (もどき) の作り方
Mori Tetsuya
Unity meets Kinect -Unity で NUI を扱ってみた- / 2015.06.23 at TechBuzz Space
Mori Tetsuya
Unity 5 の AssetBundle について (浅く) まとめてみた - 2015/05/22 第31回 Unity 勉強会
Mori Tetsuya
20150216 Unity Hands-on 「できる!Unity 2D」
Mori Tetsuya
20140926 NCMB勉強会 #4 - Unity meets SpriteStudio
Mori Tetsuya
20140829 第24回 Unity 勉強会 - Unity meets SpriteStudio
Mori Tetsuya
20140822 Swift 勉強会 vol.3 - はぢめての Swift
Mori Tetsuya
20140711 MySQL Casual Talks vol.6 / 続・Amazon RDS Casual Talks
Mori Tetsuya
20140618 教育・知育アプリのつくりかた
Mori Tetsuya
20140314 Unity勉強会 PostProcessBuild のおはなし
Mori Tetsuya
Ad
20140530 Unity に於ける Localization のおはなし
1.
Unity に於ける Localization のおはなし 2014.05.30
(Fri) / Unity 勉強会 vol.21 株式会社キッズスター システムデベロプメントチーム リーダー 森 哲哉
2.
こんばんは!
3.
Good evening !
4.
Guten Abend !
5.
Bonsoir !
6.
上好!
7.
Bonan vesperon !
8.
と、いうわけで Localization の おはなしです。
9.
自己紹介
10.
$ whoami • 森 哲哉
と申します。 • a.k.a: もんりぃ / T: @monry / F: monry84 • 29歳 / ♂ / O型 / 天 座 / 既婚 • 趣味は「お酒」と「合唱」です。
11.
$ whoami • 大学を
(自主的に) 卒業後、ベンチャーを転々。 • Web のフロントエンド、サーバサイドが得意。 • ようやく Unity 歴 1 年になりました。 • AWS とキャッキャウフフするのも好きです。 • 最近は社内インフラも やらされ… やってます。
12.
$ jobs • 株式会社キッズスター
って会社で働いてます。 • 未就学児∼小学生のお子さまをお持ちの ファミリーをターゲットにした、知育/教育に 関わるアプリ・サービスを展開しております。 • お陰様で EdTech な知育分野に於いて No.1 規模で展開しております!(当社調べw)
13.
$ ls -la
apps/ 森のえほん館 なりきり!! ごっこランド パズル&テイルズ おかしのくにを つくるのじゃ!! なりきり!! アイスクリーム 屋さんごっこ なりきり!! ママごっこ お弁当をつくろう! こえほん おかしの家を つくろう! ハンバーガー やさんごっこ 飛行機を 組み立てよう! i18n i18n i18n i18n
14.
前置き
15.
環境 • Unity: 4.3.4f1 •
Platform: iOS, Android • Development: Mac, Windows • Dimension: (主に) 2D • Language: C#
16.
L10n? i18n? G11n? •
スライドタイトルに Localization (L10n) って 書いてあるけど…。 • 多少 Internationalization (i18n) に 絡んだ話もします。 • スライドタイトルを Globalization (G11n) に しとけば良かった…(́・ω・`)
17.
対応可能範囲 • 2014年05月現在、弊社が対応したコトのある L10n はアメリカ英語のみとなります。 •
本スライドの内容だけでは、イギリス英語や 中国語の出し分け (簡体字/繁体字) などは 難しいんじゃないかと思ってます。 • 方法あったらおせーてくださいw
18.
言い訳 • 本スライドで、ちょいちょい英語使ってます。 • セッションの内容に絡むから、ね。 •
まぁ、要するに格好付けてるだけですが。ええ。 • が、 @monry は非常に英語が苦手ですっ!(キリッ • 高校の時は常に 5 段階評価で 2 でした。(́;ω;`) • 故に、文法おかしかったりするかもですが、 その辺はご愛敬ってコトで!!!
19.
Localization の基本
20.
What should I
do? • テキストの L10n • 画像・音声などのバイナリの L10n • サーバサイドの L10n • App Store, Google Play の L10n
21.
未 L10n 環境 •
アプリの特性にも依存するが、基本的に 英語をデフォルトとしておくと良さそう。 • とは言え、英語翻訳すら出来ていない段階で 英語デフォは結構微妙。 海外のストアに出してないなら、まだ良いが。 • 理想は、英語の L10n が完了した時点で デフォルト言語を変更出来るような仕組みを 予め作っておく。
22.
時差 • リテンション施策として、 PUSH
通知 (APNs/GCM) が濫用されている昨今。 • デベロッパ視点では便利な機能なんだけど、 夜中に送ろうもんなら 「通知がウザいです。☆1」 ってな感じに置き土産付きでアンインストール されるのがオチです。 • ちゃんと時差を考慮した設計にしましょう。
23.
リソースサイズ • バイナリファイルのサイズがネックになる。 • アプリ組み込み型でもダウンロード型でも。 •
個人的には全言語分のデータを突っ込むのは オヌヌメできない。 • 詳しくは後述。
24.
開発/検証 • 開発時や検証時に、言語切り替えを 端末に依存させないような作りにするとベター • 確認の度に端末の言語設定弄るのは 強
な精神力を必要とします。 • アプリの機能として言語切り替えがあるなら 問題ないけど。
25.
開発/検証 • KidsStar では
Editor 実行時や Development Build している場合に タイトル画面に OnGUI な言語切り替え ボタンを出してます。
26.
Localization の実装
27.
端末の言語設定取得 • 端末の設定言語を拾うには UnityEngine.Application.systemLanguage を使う • サポートしている言語は enum
UnityEngine.SystemLanguage に定義されている
28.
文字列等の L10n • 言語毎に翻訳テーブルを定義し、 TextAsset
か何かでアプリに埋め込む • ダウンロード型にしても良いけど、 管理が大変なのでオススメできない。 • ポイントは翻訳テーブルの管理システム。
29.
文字列等の L10n • KidsStar
では… • 言語/型毎に TextAsset を出力。 • English.string.txt, Japanese.float.txt 的な。 • key は別途 .asset ファイルで保持して TextAsset とリレーションさせるイメージ。
30.
文字列等の L10n • Editor
Script 頑張る
31.
バイナリの L10n • 画像などの拡張子の前に
.ja_JP のように付与 • Hoge.ja_JP.png, Hoge.en_US.png 的な。 • L10n 不要なファイルの存在も考慮し、 リソースリスト内で L10n 対象かどうかを フラグ管理 • 勿論、リソースリストの実装は頑張る。
32.
バイナリの L10n • Atlas
内の特定 Sprite のみ L10n も可能に。 • 泥臭いけど、 null == GetSprite(name) で判定して、無いなら GetSprite(name + “.” + I18N.currentLocale) とかかな…? • 例は NGUI の場合。Native は分からんw
33.
バイナリの L10n • ポイントは、アプリ組み込みであっても ダウンロード型であっても、端末容量の 圧迫を極力防ぐコト。 •
端末の言語設定に対して、必要最低限の リソースのみを保持させるような仕組みを作る。 • 特に Android は Non Wi-Fi だと APK サイズ 上限は 50MB なので、相当頑張る必要アリ。
34.
サーバサイドの L10n • ナウでヤングでモダンなフレームワークなら 標準対応してるコトも多いんじゃないかな? •
設計上気を付けるコトとして、日時系のデータは UTC な DateTime で持つか UnixTimestampで 持つかの何れかがオヌヌメ。 • 文字列データの L10n は gettext 使うなり 自前で組むなりご随意に。 • あ、間違っても Shift_JIS とか EUC-JP とかは NG。
35.
サーバサイドの L10n • 予算との兼ね合いが大きいけど、mBaaS
使う のも手っ取り早いかも。 • 最低限の範囲でサポートしてくれてるトコが 多い印象なので、スタートアップ向けかな? • この辺はエンジニアのスキルに依存しがち。 • ……(((((゚Д゚))))) ガクガクブルブル
36.
App Store, Google
Play の L10n • 普通に L10n 対応されてますね。 • 注意点としては、Default Language を English にしないと色々と面倒です。 • もし初期バージョンを Japanese にしちゃった 場合は こちら 参照のコト。(ステマ)
37.
Demo
38.
Any Questions ?
39.
Thank you for your
attention !
Download