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
PRO
November 28, 2018
Programming
0
1.1k
Managed Debugger の使い方をご紹介/How to use Managed Debugger on Unity
2018/11/28 (Wed) に開催された Gotanda.unity #9 での登壇資料になります。
Tetsuya Mori
PRO
November 28, 2018
Tweet
Share
More Decks by Tetsuya Mori
See All by Tetsuya Mori
Unity で ARゲームを作った話
monry
PRO
0
180
Visual Programming Framework UniFlow のご紹介/Introducing UniFlow
monry
PRO
2
2.2k
UniFlow 完全に理解した / I can develop UniFlow a little.
monry
PRO
0
420
Democratized Unity Package Manager
monry
PRO
1
2k
使ってみよう! Unity RemoteSettings/Let's use Unity RemoteSettings
monry
PRO
1
770
ごっこランドをささえる技術 〜AssetBundle 編〜/AssetBundle Fully Understood
monry
PRO
3
5.6k
Timeline でビジュアルプログラミング/Visual Programming uses Timeline
monry
PRO
1
700
エンジニア && 採用担当から見た転職テクニック/Technic of changing job
monry
PRO
2
4.1k
CAFU v3 完全に理解した / Updates for CAFU v3
monry
PRO
0
4.2k
Other Decks in Programming
See All in Programming
低レイヤーから始める GUI
fadis
18
9.4k
PHP でガチの電卓を作る
memory1994
PRO
2
160
LIFFで動く割り勘アプリTATEKAをリリースしてみた話
inoue2002
0
260
Swift Concurrency in GoodNotes
inamiy
4
1.4k
Workshop on Jetpack compose
aldefy
0
140
Swift Expression Macros: a practical introduction
kishikawakatsumi
2
740
domain層のモジュール化 / MoT TechTalk #15
mot_techtalk
0
150
Git Rebase
bkuhlmann
10
1.2k
社会人 20 年目エンジニア、発信で技術学びなおしてる話
e99h2121
1
150
ペパカレで入社した私が感じた2つのギャップと向き合い方
kosuke_ito
0
320
(新米)エンジニアリングマネージャーのしごと #RSGT2023
murabayashi
9
5.9k
Form実装基本を学び直してみた
hyugatsukui
0
250
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
159
12k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
101
6.2k
The Cult of Friendly URLs
andyhume
69
5.1k
Producing Creativity
orderedlist
PRO
335
38k
The Mythical Team-Month
searls
210
40k
Adopting Sorbet at Scale
ufuk
65
7.8k
Statistics for Hackers
jakevdp
785
210k
Making Projects Easy
brettharned
102
4.8k
Building Your Own Lightsaber
phodgson
96
4.9k
WebSockets: Embracing the real-time Web
robhawkes
58
6k
Designing with Data
zakiwarfel
91
4.2k
The World Runs on Bad Software
bkeepers
PRO
59
5.7k
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