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
uGUI の自動操作の考え方と操作方法
Search
Kuniwak
PRO
December 01, 2023
Technology
1
1.5k
uGUI の自動操作の考え方と操作方法
uGUI の仕組みのおさらいをしつつ、自動操作へのおすすめの取り組み方針と自動操作の方法を紹介します。
https://meetup.unity3d.jp/jp/events/1411
Kuniwak
PRO
December 01, 2023
Tweet
Share
More Decks by Kuniwak
See All by Kuniwak
DeNA での思い出 / Memories at DeNA
orgachem
PRO
6
3k
それ CLI フレームワークがなくてもできるよ / Building CLI Tools Without Frameworks
orgachem
PRO
18
4.4k
状態遷移図を書こう / Sequence Chart vs State Diagram
orgachem
PRO
4
590
テストケースの名前はどうつけるべきか?
orgachem
PRO
2
690
欠陥を早期に発見するための Software Engineer in Test とその重要性 / What is Software Engineer in Test and How they works
orgachem
PRO
21
4.8k
住宅を WebXR で評価しよう / Evaluating My Home by WebXR
orgachem
PRO
0
200
HOME VR
orgachem
PRO
1
830
Swift Macro に備えて構文木を 10min で学ぶ / Learn Syntax Tree for Swift Macro in 10 minutes
orgachem
PRO
1
1.5k
SoftWare Engineer in Test のおしごと / What is SWET
orgachem
PRO
1
1.2k
Other Decks in Technology
See All in Technology
いよいよ仕事を奪われそうな波が来たぜ
kazzpapa3
2
250
ドキュメントからはじめる未来のソフトウェア
pkshadeck
3
1k
Oracle Cloud Infrastructure:2026年1月度サービス・アップデート
oracle4engineer
PRO
0
150
Amazon Bedrock AgentCore EvaluationsでAIエージェントを評価してみよう!
yuu551
0
170
AI開発の落とし穴 〜馬には乗ってみよAIには添うてみよ〜
sansantech
PRO
9
3.9k
【NGK2026S】日本株のシステムトレードに入門してみた
kazuhitotakahashi
0
140
The Engineer with a Three-Year Cycle
e99h2121
0
170
フロントエンド開発者のための「厄払い」
optim
0
170
それぞれのペースでやっていく Bet AI / Bet AI at Your Own Pace
yuyatakeyama
1
580
さくらのクラウドでのシークレット管理を考える/tamachi.sre#2
fujiwara3
1
220
クラウドセキュリティの進化 — AWSの20年を振り返る
kei4eva4
0
160
Zephyr RTOS の発表をOpen Source Summit Japan 2025で行った件
iotengineer22
0
260
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.3k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
46
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.3k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
How to train your dragon (web standard)
notwaldorf
97
6.5k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
160
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
48
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
95
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.7k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
52
Transcript
V(6*ͷࣗಈૢ࡞ͷ ߟ͑ํͱૢ࡞ํ๏ 6OJUZ6*શʹཧղͨ͠,VOJXBL %F/"$P -UE
,VOJXBL OPXTQSJOUJOHUFTUIFMQFSNPOLFZͷ ίϯτϦϏϡʔλɻήʔϜ։ൃ͔Β ۤ͠ΈΛऔΓআ͖͍ͨɻ Ͱ੩తղੳثͳͲΛ։ൃ͍ͯ͠Δɻ 2
͍͑ͨ͜ͱ 3
V(6*ϓϩάϥϜ͔Βࣗಈૢ࡞Ͱ͖Δ V(6*Λࣗಈૢ࡞ͯ͠ίετͰ ࠷ݶͷಈ࡞֬ೝΛͰ͖ΔΑ͏ʹ͠Α͏ 4
എܠ 5
V(6*Λͬͨ6OJUZΞϓϦέʔγϣϯͷ ࣗಈૢ࡞Λ͍ͨ͜͠ͱ͕͋Δ ࠓճͷࣗಈૢ࡞ͷత࠷ݶͷಈ࡞֬ೝ 6
࠷ݶͷಈ࡞֬ೝͱͯ͠ɺ͍ͬͨ͡पลՕॴͰ Ϋϥογϡਐߦෆೳ͕ͳ͍͜ͱϓϩάϥϚଆͰ ֬ೝ͓͖͍ͯͨ͠ Ϋϥογϡਐߦෆೳޙʹ߇͑ΔݕূఔΛ ϒϩοΫͯ͠͠·͍εέδϡʔϧԆʹܨ͕Δ 7
࠷ݶͷಈ࡞֬ೝ ΛͲ͏Δ͔ 8
9 खಈΆͪΆ͍ͪͬͨ͡Օॴ͚ͩͳΒͰ͖Δɻ͔͠͠ ຊӨڹͦ͠͏ͳՕॴͯ֬͢ೝ͠ͳ͍ͱ͍͚ͳ͍ ͢ΔͱͲ͏ͳΔ͔ɻϓϩάϥϚʔ͕ϓϩάϥϛϯάͷ ࣌ؒΛऔΕͣʹखಈΆͪΆͪϚϯͱԽ͢ ͦΜͳ͜ͱ͋ͬͯͳΒͳ͍ͷͰϓϩάϥϚͳΒ खಈΆͪΆͪΛࣗಈԽͯ͠͠·͍·͠ΐ͏
10 ࣗಈԽʹͭͷํ͕͋Δɿ w γφϦΦϕʔεͷಈ࡞֬ೝ w γφϦΦʹґଘ͠ͳ͍ಈ࡞֬ೝ
γφϦΦϕʔεͷಈ࡞֬ೝ "ը໘͕ग़ͨΒ#Λԡͯ࣍͠ʹ$ը໘Ͱʙɺͱ ͍͏ͷ͕γφϦΦϕʔεͷಈ࡞֬ೝ γφϦΦϕʔεͷಈ࡞֬ೝյΕ͘͢อकίετ ͕ߴ͍ɻखಈΆͪΆͪϚϯ͔ΒγφϦΦϝϯςϚϯ ʹδϣϒνΣϯδͯ͠શવخ͘͠ͳ͍ 11
γφϦΦʹґଘ͠ͳ͍ಈ࡞֬ೝ ૢ࡞ՄೳͳཁૉΛదʹબΜͰΆͪΆͪਐΜͰ͍͘ ϓϩάϥϜ͕͋ΕɺγφϦΦʹґଘ͠ͳ͍࠷ݶͷ ಈ࡞֬ೝΛ͍อकίετͰ࣮ݱͰ͖Δ ͜ͷΑ͏ͳಈ࡞֬ೝΛϞϯΩʔςετͱ͍͏ 12
ϞϯΩʔςετΛ࣮ݱ͢ΔͨΊʹϓϩάϥϜ͔Βͷ ૢ࡞ΛϢʔβ͔Βͷૢ࡞ͷΑ͏ʹݟ͔͚ͤΔඞཁ͕͋Δ ࠓճͷରΞϓϦέʔγϣϯV(6*Λ͍ͬͯͨͷͰ V(6*Λத৺ʹઆ໌͍ͯ͘͠ 13 ΞϓϦ ΞϓϦ Ϣʔβ ϞϯΩʔ
ϓϩάϥϜ
V(6*ͷ͓͞Β͍ 14
15 V(6*ͰϢʔβೖྗΛॲཧ͢Δத৺*OQVU.PEVMF w *OQVU.PEVMFΛ͍ͬͯΔਓ ˠ4UBOEBMPOF*OQVU.PEVMF w *OQVU4ZTUFNΛ͍ͬͯΔਓ ˠ*OQVU4ZTUFN6**OQVU.PEVMF
ͲͪΒେࡶͳॲཧͷྲྀΕมΘΒͳ͍
16 ຖϑϨʔϜ*OQVU.PEVMFͷ1SPDFTTͰ࣍ͷΑ͏ʹॲཧ͞ΕΔɿ ϚεೖྗλονೖྗͳͲ͕͋Δ͔Λ֬ೝ͢Δ ೖྗ͕͋Εͦͷ࠲ඪ͔ͬͯSBZDBTU͢Δ ͦͷΦϒδΣΫτͷUSBOTGPSNQBSFOU͔ͬͯ ΠϕϯτϋϯυϥΛ୳͠ɺ͠ݟ͔ͭΕݺͼग़͠ɺ
ͦ͏Ͱͳ͚ΕԿ͠ͳ͍ ݫີʹSBZDBTUFSෳଘࡏ͠͏ΔɻSBZDBTUFS͕ෳ͋Δ߹ͦͷ͚ͩ IJUͨ͠ΦϒδΣΫτ͕ಘΒΕΔɻ͜ͷத͔Βը໘ͷ࠷લ໘ʹදࣔ͞Ε͍ͯΔ ΦϒδΣΫτ͕બΕΔΑ͏ʹͳ͍ͬͯΔɻ ൃ ද Ͱ ׂ Ѫ
17 parent.parent parent Raycaster
18 Raycaster EventTrigger or IEventHandler parent.parent parent
19 SBZ EventTrigger or IEventHandler parent.parent parent Raycaster
20 EventTrigger or IEventHandler parent.parent parent Raycaster &WFOU5SJHHFSPS*&WFOU)BOEMFS͕ͳ͍
21 EventTrigger or IEventHandler parent.parent parent Raycaster &WFOU5SJHHFSPS*&WFOU)BOEMFS͕ͳ͍
22 EventTrigger or IEventHandler parent.parent parent Raycaster &WFOU5SJHHFSPS*&WFOU)BOEMFS͕͋Δ
23 ݺͼग़͠ Raycaster EventTrigger or IEventHandler
V(6*ͷࣗಈૢ࡞ͷجຊ 24
25 ૢ࡞͍ͨ͠ΦϒδΣΫτΛ'JOE0CKFDUͰೖख͢Δ ૢ࡞छผʹରԠ͍ͯ͠Δ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτ͕Ϣʔβ͔Βૢ࡞Մೳͳ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτͷૢ࡞Λ࣮ߦ
26 ૢ࡞͍ͨ͠ΦϒδΣΫτΛ'JOE0CKFDUͰೖख͢Δ ૢ࡞छผʹରԠ͍ͯ͠Δ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτ͕Ϣʔβ͔Βૢ࡞Մೳͳ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτͷૢ࡞Λ࣮ߦ
27 ૢ࡞͍ͨ͠ΦϒδΣΫτΛ'JOE0CKFDUͰೖख͢Δ ૢ࡞छผʹରԠ͍ͯ͠Δ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτ͕Ϣʔβ͔Βૢ࡞Մೳͳ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτͷૢ࡞Λ࣮ߦ
28 ૢ࡞͍ͨ͠ΦϒδΣΫτΛ'JOE0CKFDUͰೖख͢Δ ૢ࡞छผʹରԠ͍ͯ͠Δ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτ͕Ϣʔβ͔Βૢ࡞Մೳͳ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτͷૢ࡞Λ࣮ߦ *&WFOU)BOEMFSͳΒରԠ͢ΔJOUFSGBDFʢ*1PJOUFS%PXO)BOEMFSͳͲʣΛ
࣮͍ͯ͠Δ͔Ͳ͏͔֬ೝ͢Δɻ&WFOU5SJHHFSͳΒUSJHHFSTϓϩύςΟ ͔ΒFWFOU*%Ͱ֬ೝ͢Δ
29 ૢ࡞͍ͨ͠ΦϒδΣΫτΛ'JOE0CKFDUͰೖख͢Δ ૢ࡞छผʹରԠ͍ͯ͠Δ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτ͕Ϣʔβ͔Βૢ࡞Մೳͳ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτͷૢ࡞Λ࣮ߦ
30 ૢ࡞͍ͨ͠ΦϒδΣΫτΛ'JOE0CKFDUͰೖख͢Δ ૢ࡞छผʹରԠ͍ͯ͠Δ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτ͕Ϣʔβ͔Βૢ࡞Մೳͳ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτͷૢ࡞Λ࣮ߦ
31 ૢ࡞͍ͨ͠ΦϒδΣΫτΛ'JOE0CKFDUͰೖख͢Δ ૢ࡞छผʹରԠ͍ͯ͠Δ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτ͕Ϣʔβ͔Βૢ࡞Մೳͳ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτͷૢ࡞Λ࣮ߦ ͦͷཁૉSBZDBTUΛඈ͠ɺࣗ·ͨͦͷUSBOTGPSNͷࢠଙʹ
SBZDBTU͕ͨΔ͜ͱΛ֬ೝ͢ΔɻSBZDBTU͕ͨΒͳ͚Εલ໘ʹ ো͕͋Γ࣮ࡍʹϢʔβ͔Βૢ࡞Ͱ͖ͳ͍
32 ૢ࡞͍ͨ͠ΦϒδΣΫτΛ'JOE0CKFDUͰೖख͢Δ ૢ࡞छผʹରԠ͍ͯ͠Δ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτ͕Ϣʔβ͔Βૢ࡞Մೳͳ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτͷૢ࡞Λ࣮ߦ ࣗͱSBZDBTUʹͨͬͨཁૉͷதʹผͷΠϕϯτϋϯυϥ͕
ͳ͍͜ͱ֬ೝ͢ΔɻผͷΠϕϯτϋϯυϥ͕͋ΔͱͦΕʹ ΠϕϯτΛऔΒΕͯ͠·͏ͷͰϢʔβ͔Βૢ࡞Ͱ͖ͳ͍
33 ૢ࡞͍ͨ͠ΦϒδΣΫτΛ'JOE0CKFDUͰೖख͢Δ ૢ࡞छผʹରԠ͍ͯ͠Δ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτ͕Ϣʔβ͔Βૢ࡞Մೳͳ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτͷૢ࡞Λ࣮ߦ
34 ૢ࡞͍ͨ͠ΦϒδΣΫτΛ'JOE0CKFDUͰೖख͢Δ ૢ࡞छผʹରԠ͍ͯ͠Δ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτ͕Ϣʔβ͔Βૢ࡞Մೳͳ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτͷૢ࡞Λ࣮ߦ
35 ૢ࡞͍ͨ͠ΦϒδΣΫτΛ'JOE0CKFDUͰೖख͢Δ ૢ࡞छผʹରԠ͍ͯ͠Δ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτ͕Ϣʔβ͔Βૢ࡞Մೳͳ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτͷૢ࡞Λ࣮ߦ &WFOU5SJHHFSͱ*&WFOU)BOEMFSͷͲͪΒͰૢ࡞छผʹ
ରԠ͢ΔJOUFSGBDFͷϝιουΛݺ0,ɻ Ҿ͕1PJOUFS&WFOU%BUBͰ"YJT&WFOU%BUBͰ OFX1PJOU&WFOU%BUB &WFOU4ZTUFNDVSSFOU ͷΑ͏ʹ࡞ΕΔɻ QPTJUJPOϓϩύςΟͳͲඞཁʹԠͯ͡ઃఆ͢Δ
36 ૢ࡞͍ͨ͠ΦϒδΣΫτΛ'JOE0CKFDUͰೖख͢Δ ૢ࡞छผʹରԠ͍ͯ͠Δ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτ͕Ϣʔβ͔Βૢ࡞Մೳͳ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτͷૢ࡞Λ࣮ߦ
37 ૢ࡞͍ͨ͠ΦϒδΣΫτΛ'JOE0CKFDUͰೖख͢Δ ૢ࡞छผʹରԠ͍ͯ͠Δ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτ͕Ϣʔβ͔Βૢ࡞Մೳͳ͜ͱΛ֬ೝ͢Δ ΦϒδΣΫτͷૢ࡞Λ࣮ߦ ͜ΕΛ'JOE0CKFDUT#Z5ZQF.POP#FIBWJPVS
/POF Ͱ ಘͯٙࣅཚ͔Βநબͯͭ͠ΛબΜͰૢ࡞͢Δ͚ͩͰ ϞϯΩʔϓϩάϥϜΛ࣮Ͱ͖Δ
ࣗಈૢ࡞ͷ·ΓͲ͜Ζ 38
ࣗಈૢ࡞ͷ·ΓͲ͜Ζ w SBZDBTUΛඈ͢ΛͲ͜ʹ͢Δ͔ w *OQVU(FU5PVDIͳͲͰಠࣗఆ͍ͯ͠Δ6*Λ ͲͷΑ͏ʹࣗಈૢ࡞͢Δ͔ 39
ࣗಈૢ࡞ͷ·ΓͲ͜Ζ w SBZDBTUΛඈ͢ΛͲ͜ʹ͢Δ͔ w *OQVU(FU5PVDIͳͲͰಠࣗఆ͍ͯ͠Δ6*Λ ͲͷΑ͏ʹࣗಈૢ࡞͢Δ͔ 40
SBZDBTUΛͲ͜ඈ͔͢ USBOTGPSNQPTJUJPOඈ͢ͷ͕࠷؆୯ɻ͔͠͠ ͱ͖Ͳ͖SBZDBTUͷͨΒͳ͍Ґஔʹઃఆ͞Εͯ ͍Δ͜ͱ͕͋Δɻ(BNF0CKFDU͝ͱʹSBZDBTU͢Δ Λม͑ΒΕΔΑ͏ʹ͢Δ͔͠ͳ͍ɻϞϯΩʔૢ࡞ ϥΠϒϥϦUFTUIFMQFSNPOLFZͰΞϊςʔγϣϯͰ
੍ޚͰ͖ΔΑ͏ʹ͍ͯ͠Δ 41 IUUQTHJUIVCDPNOPXTQSJOUJOHUFTUIFMQFSNPOLFZ
w 8PSME1PTJUJPO"OOPUBUJPOˠϫʔϧυ࠲ඪͰͷࢦఆҐஔ w 8PSME0 ff TFU"OOPUBUJPOˠUSBOTGPSNQPTJUJPO͔Βͷ૬ରҐஔ w 4DSFFO1PTJUJPO"OOPUBUJPOˠεΫϦʔϯ࠲ඪͰͷࢦఆҐஔ w 4DSFFO0
ff TFU"OOPUBUJPOˠUSBOTGPSNQPTJUJPOͷ εΫϦʔϯ࠲ඪ͔Βͷ૬ରҐஔ 42 UFTUIFMQFSNPOLFZʹ͓͚ΔΞϊςʔγϣϯ༻ͷ $PNQPOFOUͱSBZDBTUΛඈ͢Ґஔ
DPO fi Hͷ4DSFFO1PTJUJPO4USBUFHZΛσϑΥϧτͷͷ͔Β ಠࣗͷ'VOD(BNF0CKFDU 7FDUPSʹࠩ͠ସ͑Ε0,ɻ σόοά͢ΔࡍʹSBZDBTUҐஔΛ(J[NPͰද͓ࣔͯ͘͠ͱศརɻ UFTUIFMQFSNPOLFZͷ*OUFSBDUJWF$PNQPOFOU)JOUΛTDFOF
Ճͯ͠FOBCMFʹ͢Δͱ(J[NPΛදࣔͰ͖Δ 43 UFTUIFMQFSNPOLFZͰΑΓߴʹҐஔΛࢦ͍ࣔͨ͠
(J[NPͰSBZDBTUҐஔΛදࣔ 44
ࣗಈૢ࡞ͷ·ΓͲ͜Ζ w SBZDBTUΛඈ͢ΛͲ͜ʹ͢Δ͔ w *OQVU(FU5PVDIͳͲͰಠࣗఆ͍ͯ͠Δ6*Λ ͲͷΑ͏ʹࣗಈૢ࡞͢Δ͔ 45
ࣗಈૢ࡞ͷ·ΓͲ͜Ζ w SBZDBTUΛඈ͢ΛͲ͜ʹ͢Δ͔ w *OQVU(FU5PVDIͳͲͰಠࣗఆ͍ͯ͠Δ6*Λ ͲͷΑ͏ʹࣗಈૢ࡞͢Δ͔ 46
ಠࣗఆ͍ͯ͠Δ6*ͷରॲ ΦʔτύΠϩοτ༗ޮ࣌ͷΈೖྗΛࠩ͠ࠐΊΔΑ͏ʹ ରΞϓϦέʔγϣϯΛվमͨ͠ ಠࣗఆ͍ͯ͠Δ6*͕දࣔ͞ΕΔಛఆͷঢ়ଶͰ͚ͩ ͜ͷΈ͔ΒϞϯΩʔૢ࡞Ͱ͖ΔΑ͏ʹ͍ͯ͠Δ 47
·ͱΊ 48 V(6*ϓϩάϥϜ͔Βࣗಈૢ࡞Ͱ͖Δ V(6*Λࣗಈૢ࡞ͯ͠ίετͰ ࠷ݶͷಈ࡞֬ೝΛͰ͖ΔΑ͏ʹ͠Α͏