Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Unity に於ける Localization のおはなし
Search
Tetsuya Mori
PRO
May 30, 2014
Programming
0
82
Unity に於ける Localization のおはなし
Tetsuya Mori
PRO
May 30, 2014
Tweet
Share
More Decks by Tetsuya Mori
See All by Tetsuya Mori
ビルドシステムを C# 大統一したお話
monry
PRO
2
1.3k
C# 大統一理論推進委員会 会員のための Unity Package Manager プロジェクト構成案
monry
PRO
0
1.5k
はじめての C# 大統一理論
monry
PRO
0
740
unity1week でチーム開発を成功させる秘訣
monry
PRO
0
240
Unity で ARゲームを作った話
monry
PRO
1
800
Visual Programming Framework UniFlow のご紹介/Introducing UniFlow
monry
PRO
2
2.9k
UniFlow 完全に理解した / I can develop UniFlow a little.
monry
PRO
0
520
Democratized Unity Package Manager
monry
PRO
1
2.8k
使ってみよう! Unity RemoteSettings/Let's use Unity RemoteSettings
monry
PRO
1
1.1k
Other Decks in Programming
See All in Programming
AIエージェントはこう育てる - GitHub Copilot Agentとチームの共進化サイクル
koboriakira
0
370
ドメインモデリングにおける抽象の役割、tagless-finalによるDSL構築、そして型安全な最適化
knih
11
2k
deno-redisの紹介とJSRパッケージの運用について (toranoana.deno #21)
uki00a
0
140
今ならAmazon ECSのサービス間通信をどう選ぶか / Selection of ECS Interservice Communication 2025
tkikuc
19
3.5k
Is Xcode slowly dying out in 2025?
uetyo
1
190
生成AIで日々のエラー調査を進めたい
yuyaabo
0
650
既存デザインを変更せずにタップ領域を広げる方法
tahia910
1
240
iOSアプリ開発で 関数型プログラミングを実現する The Composable Architectureの紹介
yimajo
2
210
ニーリーにおけるプロダクトエンジニア
nealle
0
390
0626 Findy Product Manager LT Night_高田スライド_speaker deck用
mana_takada
0
100
A2A プロトコルを試してみる
azukiazusa1
2
1.1k
KotlinConf 2025 現地で感じたServer-Side Kotlin
n_takehata
1
230
Featured
See All Featured
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
The Pragmatic Product Professional
lauravandoore
35
6.7k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
Designing Experiences People Love
moore
142
24k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
228
22k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
20k
Done Done
chrislema
184
16k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Navigating Team Friction
lara
187
15k
Optimizing for Happiness
mojombo
379
70k
4 Signs Your Business is Dying
shpigford
184
22k
Transcript
6OJUZʹԙ͚Δ -PDBMJ[BUJPOͷ͓ͳ͠ 'SJ 6OJUZษڧձWPM גࣜձࣾΩοζελʔ γεςϜσϕϩϓϝϯτνʔϜϦʔμʔ ɹ࠸
͜ΜΜʂ
(PPEFWFOJOH
(VUFO"CFOE
#POTPJS
㑁্ʂ
#POBOWFTQFSPO
ͱɺ͍͏Θ͚Ͱ -PDBMJ[BUJPOͷ ͓ͳ͠Ͱ͢ɻ
ࣗݾհ
XIPBNJ w lɹ࠸zͱਃ͠·͢ɻ w BLBΜΓ͌5!NPOSZ'NPOSZ w ࡀˁ0ܕఱṝ࠲طࠗ w झຯʮ͓ञʯͱʮ߹এʯͰ͢ɻ
XIPBNJ w େֶΛ ࣗओతʹ ଔۀޙɺϕϯνϟʔΛసʑɻ w 8FCͷϑϩϯτΤϯυɺαʔόαΠυ͕ಘҙɻ w Α͏͘6OJUZྺʹͳΓ·ͨ͠ɻ w
"84ͱΩϟοΩϟϑϑ͢Δͷ͖Ͱ͢ɻ w ࠷ۙࣾΠϯϑϥΒ͞Εʜͬͯ·͢ɻ
KPCT w lגࣜձࣾΩοζελʔzͬͯձࣾͰಇ͍ͯ·͢ɻ w ະबֶࣇʙখֶੜͷ͓ࢠ͞·Λ͓࣋ͪͷ ϑΝϛϦʔΛλʔήοτʹͨ͠ɺҭڭҭʹ ؔΘΔΞϓϦɾαʔϏεΛల։͓ͯ͠Γ·͢ɻ w ͓ӄ༷Ͱ&E5FDIͳҭʹԙ͍ͯ /PنͰల։͓ͯ͠Γ·͢ʂ
ࣾௐ͆
MTMBBQQT ͷ͑΄Μؗ ͳΓ͖Γ ͬ͜͝ϥϯυ ύζϧςΠϧζ ͓͔͠ͷ͘ʹΛ ͭ͘Δͷ͡Ό ͳΓ͖Γ ΞΠεΫϦʔϜ ͞Μͬ͜͝
ͳΓ͖Γ ϚϚͬ͜͝ ͓หΛͭ͘Ζ͏ʂ ͑͜΄Μ ͓͔͠ͷՈΛ ͭ͘Ζ͏ʂ ϋϯόʔΨʔ ͞Μͬ͜͝ ඈߦػΛ ΈཱͯΑ͏ʂ i18n i18n i18n i18n
લஔ͖
ڥ w 6OJUZG w 1MBUGPSNJ04 "OESPJE w %FWFMPQNFOU.BD 8JOEPXT w
%JNFOTJPO ओʹ % w -BOHVBHF$
-O JO (O w εϥΠυλΠτϧʹ-PDBMJ[BUJPO -O ͬͯ ॻ͍ͯ͋Δ͚Ͳʜɻ w ଟগ*OUFSOBUJPOBMJ[BUJPO
JO ʹ བྷΜͩ͠·͢ɻ w εϥΠυλΠτϧΛ(MPCBMJ[BUJPO (O ʹ ͠ͱ͚ྑ͔ͬͨʜ ŋТŋA
ରԠՄೳൣғ w ݄ݱࡏɺฐ͕ࣾରԠͨ͠ίτͷ͋Δ -OΞϝϦΧӳޠͷΈͱͳΓ·͢ɻ w ຊεϥΠυͷ༰͚ͩͰɺΠΪϦεӳޠ தࠃޠͷग़͚͠ ؆ମࣈൟମࣈ ͳͲ ͍͠Μ͡Όͳ͍͔ͱࢥͬͯ·͢ɻ
w ํ๏͋ͬͨΒ͓ͤʔ͍ͯͩ͆͘͞
ݴ͍༁ w ຊεϥΠυͰɺͪΐ͍ͪΐ͍ӳޠͬͯ·͢ɻ w ηογϣϯͷ༰ʹབྷΉ͔ΒɺͶɻ w ·͊ɺཁ͢Δʹ͚֨ͯΔ͚ͩͰ͕͢ɻ͑͑ɻ w ͕ɺ!NPOSZඇৗʹӳޠ͕ۤखͰͬ͢ʂ ŝžŕ
w ߴߍͷ࣌ৗʹஈ֊ධՁͰͰͨ͠ɻ ТA w ނʹɺจ๏͓͔͔ͬͨ͠Γ͢Δ͔Ͱ͕͢ɺ ͦͷล͝ѪܟͬͯίτͰʂʂʂ
-PDBMJ[BUJPOͷجຊ
8IBUTIPVME*EP w ςΩετͷ-O w ը૾ɾԻͳͲͷόΠφϦͷ-O w αʔόαΠυͷ-O w "QQ4UPSF (PPHMF1MBZͷ-O
ະ-Oڥ w ΞϓϦͷಛੑʹґଘ͢Δ͕ɺجຊతʹ ӳޠΛσϑΥϧτͱ͓ͯ͘͠ͱྑͦ͞͏ɻ w ͱݴ͑ɺӳޠ༁͢Βग़དྷ͍ͯͳ͍ஈ֊Ͱ ӳޠσϑΥ݁ߏඍົɻ ւ֎ͷετΞʹग़ͯ͠ͳ͍ͳΒɺ·ͩྑ͍͕ɻ w ཧɺӳޠͷ-O͕ྃͨ࣌͠Ͱ
σϑΥϧτݴޠΛมߋग़དྷΔΑ͏ͳΈΛ ༧Ί࡞͓ͬͯ͘ɻ
࣌ࠩ w Ϧςϯγϣϯࢪࡦͱͯ͠ɺ164)௨ "1/T($. ͕ཞ༻͞Ε͍ͯΔࡢࠓɻ w σϕϩούࢹͰศརͳػೳͳΜ͚ͩͲɺ தʹૹΖ͏ΜͳΒ ʮ௨͕β͍Ͱ͢ɻˑʯ ͬͯͳײ͡ʹஔ͖࢈͖ͰΞϯΠϯετʔϧ
͞ΕΔͷ͕ΦνͰ͢ɻ w ͪΌΜͱ࣌ࠩΛߟྀͨ͠ઃܭʹ͠·͠ΐ͏ɻ
ϦιʔεαΠζ w όΠφϦϑΝΠϧͷαΠζ͕ωοΫʹͳΔɻ w ΞϓϦΈࠐΈܕͰμϯϩʔυܕͰɻ w ݸਓతʹશݴޠͷσʔλΛಥͬࠐΉͷ ΦψψϝͰ͖ͳ͍ɻ w ৄ͘͠ޙड़ɻ
։ൃݕূ w ։ൃ࣌ݕূ࣌ʹɺݴޠΓସ͑Λ ʹґଘͤ͞ͳ͍Α͏ͳ࡞Γʹ͢Δͱϕλʔ w ֬ೝͷʹͷݴޠઃఆ࿔Δͷ ڧ㔸ͳਫ਼ਆྗΛඞཁͱ͠·͢ɻ w ΞϓϦͷػೳͱͯ͠ݴޠΓସ͕͑͋ΔͳΒ ͳ͍͚Ͳɻ
։ൃݕূ w ,JET4UBSͰ&EJUPS࣮ߦ࣌ %FWFMPQNFOU#VJME͍ͯ͠Δ߹ʹ λΠτϧը໘ʹ0O(6*ͳݴޠΓସ͑ ϘλϯΛग़ͯ͠·͢ɻ
-PDBMJ[BUJPOͷ࣮
ͷݴޠઃఆऔಘ w ͷઃఆݴޠΛर͏ʹ UnityEngine.Application.systemLanguage Λ͏ w αϙʔτ͍ͯ͠Δݴޠ enum UnityEngine.SystemLanguage ʹఆٛ͞Ε͍ͯΔ
จࣈྻͷ-O w ݴޠຖʹ༁ςʔϒϧΛఆٛ͠ɺ 5FYU"TTFU͔Կ͔ͰΞϓϦʹຒΊࠐΉ w μϯϩʔυܕʹͯ͠ྑ͍͚Ͳɺ ཧ͕େมͳͷͰΦεεϝͰ͖ͳ͍ɻ w ϙΠϯτ༁ςʔϒϧͷཧγεςϜɻ
จࣈྻͷ-O w ,JET4UBSͰʜ w ݴޠܕຖʹ5FYU"TTFUΛग़ྗɻ w &OHMJTITUSJOHUYU +BQBOFTFqPBUUYUతͳɻ w LFZผ్BTTFUϑΝΠϧͰอ࣋ͯ͠
5FYU"TTFUͱϦϨʔγϣϯͤ͞ΔΠϝʔδɻ
จࣈྻͷ-O w &EJUPS4DSJQUؤுΔ
όΠφϦͷ-O w ը૾ͳͲͷ֦ுࢠͷલʹKB@+1ͷΑ͏ʹ༩ w )PHFKB@+1QOH )PHFFO@64QOHతͳɻ w -OෆཁͳϑΝΠϧͷଘࡏߟྀ͠ɺ ϦιʔεϦετͰ-Oର͔Ͳ͏͔Λ ϑϥάཧ
w ɺϦιʔεϦετͷ࣮ؤுΔɻ
όΠφϦͷ-O w "UMBTͷಛఆ4QSJUFͷΈ-OՄೳʹɻ w టष͍͚Ͳɺ null == GetSprite(name) Ͱఆͯ͠ɺແ͍ͳΒ GetSprite(name
+ “.” + I18N.currentLocale) ͱ͔͔ͳʜʁ w ྫ/(6*ͷ߹ɻ/BUJWF͔ΒΜ͆
όΠφϦͷ-O w ϙΠϯτɺΞϓϦΈࠐΈͰ͋ͬͯ μϯϩʔυܕͰ͋ͬͯɺ༰ྔͷ ѹഭΛۃྗ͙ίτɻ w ͷݴޠઃఆʹରͯ͠ɺඞཁ࠷ݶͷ ϦιʔεͷΈΛอ࣋ͤ͞ΔΑ͏ͳΈΛ࡞Δɻ w ಛʹ"OESPJE/PO8J'Jͩͱ"1,αΠζ
্ݶ.#ͳͷͰɺ૬ؤுΔඞཁΞϦɻ
αʔόαΠυͷ-O w φͰϠϯάͰϞμϯͳϑϨʔϜϫʔΫͳΒ ඪ४ରԠͯ͠Δίτଟ͍Μ͡Όͳ͍͔ͳʁ w ઃܭ্ؾΛ͚Δίτͱͯ͠ɺ࣌ܥͷσʔλ 65$ͳ%BUF5JNFͰ͔࣋ͭ6OJY5JNFTUBNQͰ ͔࣋ͭͷԿΕ͔͕Φψψϝɻ w จࣈྻσʔλͷ-OHFUUFYU͏ͳΓ
ࣗલͰΉͳΓ͝ਵҙʹɻ w ͋ɺؒҧͬͯ4IJGU@+*4ͱ͔&6$+1ͱ͔/(ɻ
αʔόαΠυͷ-O w ༧ࢉͱͷ݉Ͷ߹͍͕େ͖͍͚ͲɺN#BB4͏ ͷखͬऔΓૣ͍͔ɻ w ࠷ݶͷൣғͰαϙʔτͯ͘͠ΕͯΔτί͕ ଟ͍ҹͳͷͰɺελʔτΞοϓ͚͔ͳʁ w ͜ͷลΤϯδχΞͷεΩϧʹґଘ͕ͪ͠ɻ w
ʜʜ ƅЧƅ ŜƄŞŜƄŞŲƄſŲƄſ
"QQ4UPSF (PPHMF1MBZ ͷ-O w ී௨ʹ-OରԠ͞Εͯ·͢Ͷɻ w ҙͱͯ͠ɺ%FGBVMU-BOHVBHFΛ &OHMJTIʹ͠ͳ͍ͱ৭ʑͱ໘Ͱ͢ɻ w ͠ॳظόʔδϣϯΛ+BQBOFTFʹͪ͠Όͬͨ
߹ͪ͜Βࢀরͷίτɻ εςϚ
%FNP
"OZ2VFTUJPOT
5IBOLZPVGPS ZPVSBUUFOUJPO