Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up
for free
Managed Debugger の使い方をご紹介/How to use Managed Debugger on Unity
Tetsuya Mori
November 28, 2018
Programming
0
1k
Managed Debugger の使い方をご紹介/How to use Managed Debugger on Unity
2018/11/28 (Wed) に開催された Gotanda.unity #9 での登壇資料になります。
Tetsuya Mori
November 28, 2018
Tweet
Share
More Decks by Tetsuya Mori
See All by Tetsuya Mori
monry
2
1.6k
monry
0
370
monry
1
1.7k
monry
1
530
monry
3
4.4k
monry
1
630
monry
2
3.6k
monry
0
2.3k
monry
2
5.4k
Other Decks in Programming
See All in Programming
grapecity_dev
1
200
xrdnk
0
110
korosuke613
2
260
sters
2
140
lovee
2
210
rarous
0
170
tooppoo
0
130
mackee
0
590
legalforce
PRO
0
630
prof18
0
1.4k
naokioouchi
1
300
selcukusta
2
110
Featured
See All Featured
aarron
257
36k
62gerente
587
200k
tmm1
61
9.3k
kastner
54
1.9k
3n
163
22k
bryan
100
11k
ufuk
56
5.4k
paulrobertlloyd
72
1.4k
schacon
145
6.6k
danielanewman
200
20k
jonyablonski
19
1.2k
brettharned
93
3k
Transcript
גࣜձࣾΩοζελʔ CTO ɹ࠸ Managed Debugger ͷ͍ํΛ͝հ ·ͩ Debug.Log() ͬͯΔͷʂʁ Unity
2018.2 ࣌ͷϞμϯͳσόοάख๏ίϨͩʂ 2018/11/28 Gotanda.unity #9 at Unity Technologies Japan
͜ΜΜʂ 2
•LT ֓ཁ •ࣗݾհ •σόοάख๏͋Ε͜Ε •ϥΠϒσϞ •σόοΨͷ͍ํ •·ͱΊ 3 ΞδΣϯμ
•LT ֓ཁ •ࣗݾհ •σόοάख๏͋Ε͜Ε •ϥΠϒσϞ •σόοΨͷ͍ํ •·ͱΊ 4 ΞδΣϯμ ΠϚίί
ࠓͷ͓ͷ֓ཁ 5
•Unity σόοάશʹཧղ͍ͨ͠ਓ •UniRx ͱ͔ͰϥϜμࣜΛ͏ͱ ʮελοΫτϨʔε͕ಡΈͮΒ͍…ʂʯ ͬͯࢥ͍ͬͯΔਓ •iOS ͱ͔ Android ͱ͔ͷ
࣮ػσόοάͰࢮʹͦ͏ʹͳͬͯΔਓ 6 ࠓͷରऀ ֓ཁ
•֤σόοάख๏ͷ͍Ͳ͜Ζ •JetBrains Rider Λ༻͍ͨ Managed Debugger ͷ͍ํ 7 ࠓ͢ίτ ֓ཁ
•JetBrains Rider Ҏ֎ͷ IDE ʹ ԙ͚ΔσόοΨͷ͍ํ •ίϯγϡʔϚήʔϜػʹԙ͚Δ σόοΨͷ͍ํ 8 ࠓ͞ͳ͍ίτ
֓ཁ
•Unity 2018.3.0b11 ʹͯಈ࡞֬ೝ͓ͯ͠Γ·͢ •JetBrains Rider 2018.3 EAP 7 ʹͯಈ࡞֬ೝ͓ͯ͠Γ·͢ •IL2CPP
Backend ͳ iOS ϏϧυΛ iOS 12.1 Ͱಈ࡞֬ೝ͓ͯ͠Γ·͢ 9 ։ൃڥ ֓ཁ
•LT ֓ཁ •ࣗݾհ •σόοάख๏͋Ε͜Ε •ϥΠϒσϞ •σόοΨͷ͍ํ •·ͱΊ 10 ΞδΣϯμ ΠϚίί
ࣗݾհ 11
12 Who am I ? ࣗݾհ @monry a.k.a. ΜΓ͌ઌੜ
13 Who am I ? ࣗݾհ •2019-2020 Microsoft MVP for
Developer Technologies •ࣗশ Unity ΤϰΝϯδΣϦετ
14 Job ࣗݾհ ࢠͲ͚ΞϓϦ࡞ͬͯΔձࣾͰ $50ͬͯ·͢
15 Recruit ࣗݾհ •Unity ͰͷΞχϝʔγϣϯ࡞Γ γʔϯ࡞ΓͳͲΛߦ͏ Unity ΞʔςΟετ •Πϥετ੍࡞ը໘σβΠϯΛߦ͏ σβΠφɾΠϥετϨʔλ
16 PR ࣗݾհ ϚϯΨͰΘ͔Δ Unity ධ࿈ࡌதʂ
17 PR ࣗݾհ #ͷϥδ ύʔιφϦςΟͬͯ·͢ʂ ήετืूதʂ
ຊ 18
•LT ֓ཁ •ࣗݾհ •σόοάख๏͋Ε͜Ε •ϥΠϒσϞ •σόοΨͷ͍ํ •·ͱΊ 19 ΞδΣϯμ ΠϚίί
σόοάख๏͋Ε͜Ε 20
21 σόοάख๏ σόοάख๏ ࢹ צ ϩά σόοΨ σόοΨ
•Editor Ͱͷ࣮தͳΒɺ·͊ΞϦ •ͨͩ͠ɺϩάΛՃɾมߋ͢Δʹ ίϯύΠϧ͕ΔͷͰ ڊେϓϩδΣΫτͩͱγϯυΠ •࣮ػͰͷσόοάϏϧυ͕ ඞཁʹͳΔͷͰඇݱ࣮త 22 Debug.Log() ͡Όμϝʁ
σόοάख๏
•σόοάΛิॿ͢ΔιϑτΣΞ •Breakpoint Λுͬͯϓϩηε͕ ֘ߦʹࢸͬͨ࣌ʹҰ࣌ఀࢭ •Ұ࣌ఀࢭ࣌ͷมͷঢ়ଶΛղੳ •ͦ͜ʹࢸΔελοΫτϨʔεΛදࣔ 23 σόοΨ is Կʁ
σόοάख๏
•Visual Studio JetBrains Rider ͳͲͷ IDE ʹࡌ͞Ε͍ͯΔ •Visual Studio
Code Ͱ֦ுػೳͱͯ͠ ΠϯετʔϧՄೳʢΒ͍͠ʣ •ίϯςΩετʹΑͬͯσόοάΛઐͱ͢Δ δϣϒͷਓΛࢦ͢ίτ͋Δ 24 σόοΨ is Կʁ σόοάख๏
•LT ֓ཁ •ࣗݾհ •σόοάख๏͋Ε͜Ε •ϥΠϒσϞ •σόοΨͷ͍ํ •·ͱΊ 25 ΞδΣϯμ ΠϚίί
Live Demo 26
•LT ֓ཁ •ࣗݾհ •σόοάख๏͋Ε͜Ε •ϥΠϒσϞ •σόοΨͷ͍ํ •·ͱΊ 27 ΞδΣϯμ ΠϚίί
σόοΨͷ͍ํ 28
ηΫγϣϯλΠτϧ •Ϗϧυ࣌ͷΦϓγϣϯ •Development Build •Script Debugging •Wait For Managed Debugger
Λ͚Δͱɺىಈޙʹ μΠΞϩά͕ग़ͯ σόοΨଓΛͯΔ 29 σόοΨͷ͍ํ σόοΨͷ͍ํ Unity 2018.2 ͔Β IL2CPP Backend Ͱ Script Debugging Մೳʹ
ηΫγϣϯλΠτϧ •Wait For Managed Debugger Λ͚Δͱىಈ࣌ʹ μΠΞϩά͕ग़Δ •Ok ϘλϯΛԡ͢·Ͱ ϓϩηε͕Ұ࣌ఀࢭͯ͠
͘ΕΔͷͰɺͦͷؒʹ σόοΨΛଓ͢Δ 30 σόοΨͷ͍ํ σόοΨͷ͍ํ
ηΫγϣϯλΠτϧ •Debugger ଓ •ಉҰ LAN ʹډΔ ϓϩηεΛ୳ͯ͘͠ΕΔ •Editor ࣮ػର 31
σόοΨͷ͍ํ σόοΨͷ͍ํ
ηΫγϣϯλΠτϧ •Breakpoint ΛுΔ •Breakpoint ʹରͯ͠ ݅ࣜΛઃఆՄೳ ʢ࣮ػͩͱո͍͠ʁʣ •εΫγϣ this ͕
null ͷ߹ʹࢭΊ͍ͯΔ 32 σόοΨͷ͍ํ σόοΨͷ͍ํ Unity ͋Δ͋Δ
ηΫγϣϯλΠτϧ •Exception Λ Watch •Exception ൃੜ࣌Ͱ ࢭΊͯ͘ΕΔ •ӈԼͷεΫγϣͷ߹ transform ࢀর࣌Ͱ
NullReferenceException ͕ ൃੜ͍ͯ͠Δ 33 σόοΨͷ͍ํ σόοΨͷ͍ํ
•LT ֓ཁ •ࣗݾհ •σόοάख๏͋Ε͜Ε •ϥΠϒσϞ •σόοΨͷ͍ํ •·ͱΊ 34 ΞδΣϯμ ΠϚίί
·ͱΊ 35
•σόοΨΛ͑ಡΈਏ͍Τϥʔ ղੳ͘͢͠ͳΔʂ •Xcode ܨ͕ͳ࣮ͯ͘ػσόοάՄೳʂ •Managed Code ͰσόοάͰ͖Δʂ •Visual Studio ͳΓ
Rider ͳΓ ศརͳ IDE Λੵۃతʹ͍ͬͯ͜͏ʂ 36 ·ͱΊ ·ͱΊ Unity 2018.2 ͔Β
•ຊͬͨσϞϓϩδΣΫτ • https://github.com/monry/debugger_demo 37 Appendix
Thank you for your attention!! 38