Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
もしあなたがアウトゲーム(UI)を つくることになったら with Unity
Search
Masataka Kohagura
August 03, 2019
Programming
0
2.2k
もしあなたがアウトゲーム(UI)を つくることになったら with Unity
Masataka Kohagura
August 03, 2019
Tweet
Share
More Decks by Masataka Kohagura
See All by Masataka Kohagura
ローカライズシステムを作った話
masakoha
0
280
Other Decks in Programming
See All in Programming
ローターアクトEクラブ アメリカンナイト:川端 柚菜 氏(Japan O.K. ローターアクトEクラブ 会長):2720 Japan O.K. ロータリーEクラブ2025年12月1日卓話
2720japanoke
0
730
AIエンジニアリングのご紹介 / Introduction to AI Engineering
rkaga
7
2.3k
sbt 2
xuwei_k
0
300
実はマルチモーダルだった。ブラウザの組み込みAI🧠でWebの未来を感じてみよう #jsfes #gemini
n0bisuke2
2
1k
TUIライブラリつくってみた / i-just-make-TUI-library
kazto
1
380
FluorTracer / RayTracingCamp11
kugimasa
0
230
AIの誤りが許されない業務システムにおいて“信頼されるAI” を目指す / building-trusted-ai-systems
yuya4
6
3.5k
AIエージェントを活かすPM術 AI駆動開発の現場から
gyuta
0
410
チームをチームにするEM
hitode909
0
330
TypeScriptで設計する 堅牢さとUXを両立した非同期ワークフローの実現
moeka__c
6
3k
新卒エンジニアのプルリクエスト with AI駆動
fukunaga2025
0
220
tsgolintはいかにしてtypescript-goの非公開APIを呼び出しているのか
syumai
6
2.2k
Featured
See All Featured
Producing Creativity
orderedlist
PRO
348
40k
Automating Front-end Workflow
addyosmani
1371
200k
Building an army of robots
kneath
306
46k
The Cost Of JavaScript in 2023
addyosmani
55
9.3k
KATA
mclloyd
PRO
32
15k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.4k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.2k
BBQ
matthewcrist
89
9.9k
Faster Mobile Websites
deanohume
310
31k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
Done Done
chrislema
186
16k
Scaling GitHub
holman
464
140k
Transcript
Έͳ͞ΜɺΞτήʔϜͮ͘ Γ͖Ͱ͔͢ʁ
ͦͦΞτήʔϜͬͯԿʁ
͋ΔήʔϜͷύʔτͷେ෦͕ 6*ʹΊΒΕ͓ͯΓɺͦΕΒ6* Λ৮Δ͜ͱʹΑͬͯԿ͔͠ΒͷΞ ΫγϣϯΛى͜͢ήʔϜύʔτͷ ૯শ ͱ೦ͷͨΊʹఆ͓ٛͯ͘͠ ࠓճͷΞτήʔϜͷఆٛ
6*ͷྔ͕ଟ͗ͯ͢େมʂ
͜ΕΛ࡞Δ͜ͱʹͳͬͨΒɺ· ͣԿΛߟ͑Δɾɾɾʁ
ࠓճɺͦΜͳ͓
͋͠ͳ͕ͨΞτήʔϜ 6* Λ ͭ͘Δ͜ͱʹͳͬͨΒXJUI6OJUZ ݹਖ਼ོ 4BU 6OJUZ6*ΤϯδχΞϦϯάษڧձ
ࣗݾհ w ݹਖ਼ོ ͙͜Β·͔ͨ͞ w !NBTBLPIB w ϑϦʔϥϯε ϲ݄
w ͷΜͼΓ͠ͳ͕Β౦ژ ήʔϜγϣʹ͚ͯΞ τήʔϜ6*ؚΊͨ ج൫ܥΛ࡞͍ͬͯ·͢
ࣗݾհ w ݄d݄ 7ϥΠόʔࢹௌΞϓϦ ʮ*3*".ʯΛ࡞͍ͬͯ ·ͨ͠ 6*पΓશൠ
ͲΜͳΛ͢Δͷ͔ w ΞτήʔϜΛ͔Β࡞͍ͬͯͬͨ w ։ൃ͔ΒӡӦ·ͰͷΞτήʔϜ࡞ͷྲྀΕͷ w ίʔυΛΰϦΰϦॻ͍ͯ6*Λ࡞͍ͬͯ͘ w V(6*ܥͷ΄ͱΜͲ͠·ͤΜ
͓ॻ͖ w ϓϩδΣΫτൃ࣌ʹ͓͖͍ͬͯͨ͜ͱ w 6*࣮ͷෳਓ։ൃͷޮԽ w ͨ͘͞ΜͷػೳΦʔϓϯιʔεϑϨʔϜϫʔ ΫΛͭͬͨ͘
ୈҰষ ϓϩδΣΫτൃ࣌ʹ͓ͬͯ ͖͍ͨ͜ͱ
*3*".࠷ॳظͷ w ࢲ*3*".ϓϩδΣΫτൃ࣌ʹࢀՃ w 6OJUZΤϯδχΞࢲؚΊͯਓ w ਓΩϟϥΫλʔͷϞʔγϣϯΛಈ͔͢ w ਓ௨৴෦ w
ਓΞΠςϜ࡞ σβΠφʔ݉ w ਓ6*શൠࢲ
6*Ұਓ͚ͩ
6*ͷਐঢ়گ
Ͳ͏࡞͍ͬͯ͜͏͔ w ࠷ॳ͔ΒϦϦʔε࣌ظ΄΅ܾ·͍ͬͯͨɻ w 6*ྔ͕ଟ͍ͷͰɺҰਓͰΔʹͯ͠શવ ͕࣌ؒΓͳ͍ 6*ਓһ૿ͯ͠ͱૣΊʹ૬ ஊ w
6*ਓһ݄ ݄ ݄ʹਓͣͭ૿͍͑ͯͬͨ w ͦΕ·ͰʹࣗͰ6*ܥͷڞ௨ج൫Λ࡞ͬͯɺͱ Γ͋͑ͣΨϫ͚ͩҰ௨Γը໘Λ࡞Δํʹ
࣮ΛਐΊΔલʹͨ͜͠ͱ w ༻ޠͷ౷Ұ w ίʔυنͷ౷Ұ w ಈ࡞ج४ͱಈ࡞ର w $BOWBT0SEFSͷઃఆ w
։ൃελΠϧͷ
༻ޠͷ౷Ұ w ༻ޠͷ౷Ұ w ϙοϓΞοϓ Ϟʔμϧ μΠΞϩά w Ϋϥε໊1SFGBC໊ʹؔΘΔͷͰɺܾΊͯ
͓͔ͳ͍ͱमਖ਼͕େม w ࣄΛ͖ͯͨ͠ڥ֤ʑʹΑͬͯҧ͏ɻಉ͡ ݴ༿Ͱҧ͏ҙຯΛ͍ࣔͯ͠Δ͜ͱ͋Δͷ ͰɺೝࣝΛ౷Ұ͓ͯ͘͠
ίʔυنͷ౷Ұ w ༻ޠͷ౷Ұͱಉ͡ w ༨ஊ͚ͩͲɺN@IPHFIPHFͱ໋໊͞ΕΔͱɺ ࢲͭΒ͍ ͭΒ͍
ಈ࡞ج४ͱಈ࡞ର w ݄࣌ɺJ1IPOF9ग़͍ͯͨͷ ͷɺ4BGF"SFBͷରԠͳͲʹ֤͕ࣾΘΕ͍ͯ ͨ࣌ظ w J1IPOF9ͷإೝࣝΛ༻͢ΔΞϓϦͳͷͰɺ J1IPOF9ͷղ૾Λج४ʹͨ͠6*Λ࡞Δ͜ͱ ʹ w
$BOWBT4DBMFSʹө
ಈ࡞ج४ͱಈ࡞ର w ͜ͷઃఆͰී௨ͷͩͱɺ্Լ͕ΕΔ ͜ͱΛߟྀͯ͠σβΠϯ͢Δඞཁ͕͋ΔͷͰɺ σβΠφʔͷํҙ
$BOWBT0SEFSͷઃఆ w 6*ͷϨΠϠʔΛܾΊͯ ͓͘ w 6*ͷཁૉʹɺͳʹ͔ Λදࣔ͢Δը໘͚ͩͰ ͳ͘ɺͦͷը໘ͷϒ ϩοΩϯάɺϙοϓ ΞοϓͳͲɺ༷ʑͳϨ
ΠϠʔ͕ଘࡏ͢Δ Canvas Order WarningBlocking 50 Warning 40 PopupBlocking 30 Popup 20 Blocking 10 جຊͷදࣔ 0
$BOWBT0SEFSͷઃఆ w "TTFU4UPSFͳͲͷ "TTFUʹɺV(6*Λར༻ ͨ͠"TTFU͋Δɻ w 43%FCVHHFSɺσόο άػೳΛ؆୯ʹ࣮Ͱ͖ Δ"TTFU w
༻͢ΔΞηοτʹΑͬͯ ɺ$BOWBT0SEFSͷઃ ఆ࣍ୈͰཁमਖ਼ Canvas Order SR Debugger 120 WarningBlocking 50 Warning 40 PopupBlocking 30 Popup 20 Blocking 10 جຊͷදࣔ 0
σβΠϯͷ w ͋Β͔͡Ί༷ʑͳཁૉΛ౷Ұ͓͍ͯͨ͠΄͏͕ Α͍ w ϑΥϯτ w Ϙλϯͷେ͖͞ w ্ԼࠨӈͷϚʔδϯ෯
w ৭ ͜ͷϓϩδΣΫτʹ͓͍ͯͷ$$
ୈೋষ 6*ͷ࣮ෳਓ։ൃͷޮԽ
.71ΞʔΩςΫνϟΛ࠾༻ w ղઆͯͨ͠Β͜Ε͚ͩͰ͕͔͔࣌ؒΓͦ͏ͳͷ Ͱɺ͓͢͢ΊͷղઆϖʔδΛҎԼʹ w ͋ΔఔͷറΓΛ͢Δ͜ͱʹΑͬͯɺʮͲ͏ ͬͯίʔυΛॻ͚͍͍ʁʯΛආ͚Δ w 8FCग़ͷ6OJUZΤϯδχΞʹΑΔେنήʔ Ϝͷج൫ઃܭ
$ZCFS"HFOU٢ IUUQTEFWFMPQFSTDZCFSBHFOUDPKQCMPH BSDIJWFT
ڞ௨ύʔπΛ࡞Δ w ֦ॖ͢ΔϘλϯΛ࡞Δ w ΤσΟλ֦ுͰV(6*ͷϘλϯͱಉ༷ʹΦϦ δφϧϘλϯ͕ੜ͞ΕΔΑ͏ʹ w V(6*ͷػೳ͚ͩͰɺΞχϝʔγϣϯΛ ͏͜ͱͰ࣮Մೳ͕ͩɺͳΔ͘ࢲͦͷ ΞχϝʔγϣϯίʔυͰॻ͖͔ͨͬͨͷͰ
6*#VUUPOΛ֦ு
ڞ௨ύʔπΛ࡞Δ w ී௨ͷΫϦοΫɺԡ͠ ͨͱ͖ɺͨ͠ͱ͖ɺ ԡͨ͠͠ͱ͖ʹରԠ
ڞ௨ύʔπΛ࡞Δ w ϙοϓΞοϓػೳͷ࡞ w ϙοϓΞοϓ༷ʑͳॴ͔ΒݺΕΔͷͰɺ 4JOHMFUPO.POP#FIBWJPVSΛܧঝͯ͠ 1PQVQ.BOBHFSΛͭ͘Δɻ w ίʔυΛղઆ͠Α͏ͱࢥ͚ͬͨͲɺ͔ͳΓΊΜ Ͳ͍͘͞ͷͰɺࡉ͔͍࣮ʹ͍ͭͯ࠙ձͷ
ͱ͖ʹͰ
ڞ௨ύʔπΛ࡞Δ
ը໘ભҠج൫Λ࡞Δ w γʔϯભҠը໘ભҠͷϑϨʔϜϫʔΫΛ࡞ͯ͠ɺ ͦͷ্ʹ༷ʑͳը໘Λ࣮͍ͯ͘͠ɻ w Ͳ͜ͷը໘ಉ͡Α͏ʹ࣮͕Ͱ͖ΔΑ͏ʹͳΔͷ Ͱɺ࣮͍ͯ͠ͳ͍ଞͷਓ͕ݟͯେମͷྲྀΕ͕Θ͔ Δɻ౷Ұײ͕ग़Δɻ w ʰ$MJPOFʱͱ͍͏Φʔϓϯιʔεͷը໘ભҠج൫࡞ͬ
ͯ·͢ɻ ͳ͓%PDVNFOU IUUQTHJUIVCDPN.BTB,PIB$MJPOFSFMFBTFT UBHW
ը໘ભҠج൫Λ࡞Δ ޙչ w *3*".ͰυϦϧμϯϏϡʔ J1IPOFͷઃఆ ը໘Έ͍ͨʹ۷ΓਐΜͰ͍͘ը໘ભҠ w ʰ$MJPOFʱʹ࣮ࡁΈ w
*3*".Ͱɺ৽نొը໘ͱઃఆը໘͕υϦϧ μϯϏϡʔ
ը໘ભҠج൫Λ࡞Δ ޙչ w ઃఆը໘ͷΨϫΛͯ͢࡞ΓऴΘͬͨͱ͖ʹ ʮ͋Εʁ͜Ε$MJPOFʹ͍࣋ͬͯͬͯϥΠϒ ϥϦԽͨ͠΄͏͕Α͘ͳ͍ʁʯߟ͑ͨ w ΛͬͯϥΠϒϥϦԽ։࢝ w ͦͷؒʹઃఆը໘͍Ζ͍Ζ࣮͞Ε͍ͯ͘
w ϥΠϒϥϦ͕ग़དྷͨ͋ͱʹ৽نొը໘Λͦͷ ϥΠϒϥϦͰ࣮
ը໘ભҠج൫Λ࡞Δ ޙչ w ઃఆը໘͜ͷϥΠϒϥϦʹҠߦ͠Α͏ͱܾҙ w ʮಠ࣮͕ࣗೖ͍ͬͯΔɾɾɾʯ ʮ͜ͷ௨৴ॲཧ͕Ҿ͖ണ͕ͤͳ͍ɾɾɾʯ ʮͱ͍͏͔ɺੲͷࣗͷιʔείʔυԚ͍ʯ
ը໘ભҠج൫Λ࡞Δ ޙչ
ը໘ભҠج൫Λ࡞Δ ޙչ w ݁ہࣙΊΔ·Ͱ͜ͷղܾͰ͖ͣ w ࠷ॳ͔ΒΒͳ͍ͱಠ࣮͕ࣗೖͬͯɺͲΜͲ ΜҠߦͰ͖ͳ͘ͳΔ
ୈࡾষ ͨ͘͞ΜͷػೳΦʔϓϯιʔ εϑϨʔϜϫʔΫΛ࡞ͬͨ
࡞ͬͨػೳ w $MJPOFը໘ભҠج൫ܥɾ6*ܥ w *DBSVTϩʔΧϥΠζγεςϜ w .714DSJQU(FOFSBUPS6OJUZ.71ύλʔϯ ͷιʔείʔυΛҰׅੜ
$MJPOF w IUUQTHJUIVCDPN.BTB,PIB$MJPOF w ୈೋষͰେମͨ͠ w ͜Ε͔Β6*ͷը໘ભҠͰϥΠϒϥϦԽͨ͠ ͍ͷ͕ग़͖ͯͨΒՃ͍ͯ͘͠༧ఆ
*DBSVT w IUUQTHJUIVCDPN.BTB,PIB*DBSVT w ϩʔΧϥΠζγεςϜ
*DBSVT w ॳظԽ࣌ʹ5BSHFU-BOHVBHFͱ%FGBVMU -BOHVBHFΛೖྗɻೖྗͨ͠ݴޠʹԠͯ͡ LFZʹର͢Δจݴ͕ग़ྗ͞ΕΔ w ΤσΟλ֦ுͰɺ,FZͷ&OVNΛੜ͢ΔΑ͏ ʹ͍ͯ͠ΔͷͰλΠϓηʔϑ
.714DSJQU(FOFSBUPS6OJUZ w Ϋϥε໊ΛೖΕΔͱɺ.PEFM7JFX1SFTFOUFS ͷͭͷ$ϑΝΠϧΛग़ྗͯ͘͠ΕΔΤσΟλ ֦ு w ͳΜͱOBNFTQBDFࣗಈతʹೖΕͯ͘ΕΔ Αʂ
֎ จࣈͷྗ
ࡢͷதௐࠪΛ͍ͯͨ͠ࢲ w ϑΠϩϯ͞Μ͔Βͷґཔ w Ϣʔβ͔ΒʮήʔϜΛ͢Δͱൃ͕͍͢͝ʯ w ࠷దԽͷґཔ
w IUUQ UBJZPQSPKFDUDP NTVLVNJ[V UFBTFSKB
%ήʔϜ w มͳίʔυͳ͍͠ɺϓϩϑΝΠϥΛோΊͳ͕ ΒεύΠΫ͋Δͱ͍͑Ͳͦ͜·Ͱॏ͘ͳ ͦ͞͏ͩ͠ͳΜͰͩΖ͏ͱᄬͬͯͨ w ·͊ͰεϚϗήʔϜͰॏ͘ͳΔͷͬͯɺίʔ υΑΓϨϯμϦϯά͕ॏ͍ͷ͕େ֓ͳͷͰɺ ͠Β͘'SBNF%FCVHHFSͳͲͰோΊଓ͚ͯ ͨ
w ͦͯ͋͠Δ͜ͱʹؾͮ͘
%ήʔϜ w ʮεΫϛζʯͷϗʔ Ϝը໘ w ͳΜ͔ҧײ
ҧײͷ൜ਓ w %ͷϗʔϜը໘ͳͷʹɺͳͥ5SJTLɺ 7FSUTL͋ΔΜͩɾɾɾʁ
൜ਓͷਖ਼ମ w ͳΜ͔จࣈͬΆ͍ۣܗ͕จࣈ͋ͨΓͷϙϦΰ ϯ͕ΊͬͪΌଟ͍
൜ਓͷਖ਼ମ w จࣈʹ0VUMJOFͱ 4IBEPXͰΤϑΣΫτ Λ͔͚ͯݟͯ͘͢͠ ͍ͨ w ϙϦΰϯ૿େͷཁҼ ͜Ε w
ςϥγϡʔϧϒϩάʹهࣄ͕͋ͬͨΑ ʲ6OJUZʳ5FYU.FTI1SPͷΞτϥΠϯɺV(6*ͷͱൺͯͱͯྑ͍ IUUQUTVCBLJUIBUFCMPKQFOUSZ
൜ਓʹࣄௌऔͯ͠Έͨ ˡલ ˣޙ
จࣈͷݟӫ͑ΛΑ͍ͨ͘͠ͳΒ w V(6*ͷ5FYUʹ4IBEPX0VUMJOFΛ͚ͭΔ ͱɺඳը͕͍ͨΜͳ͜ͱʹͳΔ w 5FYU.FTI1SPΛͳΔ͍ͬͯ͘͘ํ͕Α ͦ͞͏ w ϑΠϩϯ͞Μɺࢿྉఏڙ͋Γ͕ͱ͏͍͟͝·͢ʂ
Ұ௨ΓޠΓͬͨɾɾɾʁ w ·ͩ·ͩޠΓ͍ͨ͜ͱͨ͘͞Μ w ֆจࣈͷจࣈίʔυ Ϣʔβʹֆจࣈೖྗ ͤ͞Δͱେมͳ w *OQVUNVMUJ5PVDI&OBCMFEGBMTFʹͯ͠
ɺٖࣅతʹϚϧνλονͰ͖Δ w "VUP-BZPVUશʹཧղͨ͠FUDʜ
ଓ͖࠙ձͰΓ͔͚ͯͩ͘ ͍͞
·ͱΊ w ΞτήʔϜͮ͘Γྔͱͷઓ͍ w ਓ͕͍Ε؆୯ʹ্͍͚͛ͯΔ w ͕ɺ։ൃΛ্͛Δʹͯ͠ԼΛͭͬͯ͘ ͓͔ͳ͍ͱɺޮ͕ѱ͘ͳͬͯ͠·͏ w ͜ΕͰΈΜͳΞτήʔϜ͕͖ʹͳ͔ͬͨ
ͳʁ
5IBOLZPVGPS-JTUFOJOH