2018/11/28 (Wed) に開催された Gotanda.unity #9 での登壇資料になります。
גࣜձࣾΩοζελʔ CTOɹ࠸Managed Debugger ͷ͍ํΛ͝հ·ͩ Debug.Log() ͬͯΔͷʂʁ Unity 2018.2 ࣌ͷϞμϯͳσόοάख๏ίϨͩʂ2018/11/28 Gotanda.unity #9 at Unity Technologies Japan
View Slide
͜ΜΜʂ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
12Who am I ?ࣗݾհ@monrya.k.a. ΜΓ͌ઌੜ
13Who am I ?ࣗݾհ•2019-2020 Microsoft MVP for Developer Technologies•ࣗশ Unity ΤϰΝϯδΣϦετ
14JobࣗݾհࢠͲ͚ΞϓϦ࡞ͬͯΔձࣾͰ$50ͬͯ·͢
15Recruitࣗݾհ•Unity ͰͷΞχϝʔγϣϯ࡞Γ γʔϯ࡞ΓͳͲΛߦ͏ Unity ΞʔςΟετ•Πϥετ੍࡞ը໘σβΠϯΛߦ͏ σβΠφɾΠϥετϨʔλ
16PRࣗݾհϚϯΨͰΘ͔Δ Unity ධ࿈ࡌதʂ
17PRࣗݾհ#ͷϥδ ύʔιφϦςΟͬͯ·͢ʂήετืूதʂ
ຊ18
•LT ֓ཁ•ࣗݾհ•σόοάख๏͋Ε͜Ε•ϥΠϒσϞ•σόοΨͷ͍ํ•·ͱΊ19ΞδΣϯμΠϚίί
σόοάख๏͋Ε͜Ε20
21σόοάख๏σόοάख๏ࢹצϩά σόοΨσόοΨ
•Editor Ͱͷ࣮தͳΒɺ·͊ΞϦ•ͨͩ͠ɺϩάΛՃɾมߋ͢Δʹ ίϯύΠϧ͕ΔͷͰ ڊେϓϩδΣΫτͩͱγϯυΠ•࣮ػͰͷσόοάϏϧυ͕ ඞཁʹͳΔͷͰඇݱ࣮త22Debug.Log() ͡Όμϝʁσόοάख๏
•σόοάΛิॿ͢ΔιϑτΣΞ•Breakpoint Λுͬͯϓϩηε͕ ֘ߦʹࢸͬͨ࣌ʹҰ࣌ఀࢭ•Ұ࣌ఀࢭ࣌ͷมͷঢ়ଶΛղੳ•ͦ͜ʹࢸΔελοΫτϨʔεΛදࣔ23σόοΨ is Կʁσόοάख๏
•Visual Studio JetBrains Rider ͳͲͷ IDE ʹࡌ͞Ε͍ͯΔ•Visual Studio Code Ͱ֦ுػೳͱͯ͠ ΠϯετʔϧՄೳʢΒ͍͠ʣ•ίϯςΩετʹΑͬͯσόοάΛઐͱ͢Δ δϣϒͷਓΛࢦ͢ίτ͋Δ24σόοΨ is Կʁσόοάख๏
•LT ֓ཁ•ࣗݾհ•σόοάख๏͋Ε͜Ε•ϥΠϒσϞ•σόοΨͷ͍ํ•·ͱΊ25ΞδΣϯμΠϚίί
Live Demo26
•LT ֓ཁ•ࣗݾհ•σόοάख๏͋Ε͜Ε•ϥΠϒσϞ•σόοΨͷ͍ํ•·ͱΊ27ΞδΣϯμΠϚίί
σόοΨͷ͍ํ28
ηΫγϣϯλΠτϧ•Ϗϧυ࣌ͷΦϓγϣϯ•Development Build•Script Debugging•Wait For ManagedDebugger Λ͚Δͱɺىಈޙʹ μΠΞϩά͕ग़ͯ σόοΨଓΛͯΔ29σόοΨͷ͍ํσόοΨͷ͍ํUnity 2018.2 ͔ΒIL2CPP Backend ͰScript Debugging Մೳʹ
ηΫγϣϯλΠτϧ•Wait For ManagedDebugger Λ͚Δͱىಈ࣌ʹ μΠΞϩά͕ग़Δ•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_demo37Appendix
Thank you for your attention!!38