Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
CCKでできる!NPCのAIロジック
Search
Galupeno
May 31, 2021
Programming
1.5k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CCKでできる!NPCのAIロジック
第5回clusterワールド制作ゆるゆる勉強会
Galupeno
May 31, 2021
More Decks by Galupeno
See All by Galupeno
クラスターゲームラボ #1ゲームの仕様を考える
galupeno
0
250
ロボのダイエット
galupeno
0
170
クラスター・カンバセイション・クラブ#8パブリック文化防衛のための緊急会議
galupeno
0
160
CCKにちょい足し!Constraintを使ってみよう スライド資料
galupeno
0
1.4k
みんなアバターどないしとぉ?スライド
galupeno
0
110
UIを使ったデモシーンの実装
galupeno
0
1.3k
BULLUET RUNNERS!!! presentation slide
galupeno
0
290
Other Decks in Programming
See All in Programming
FreeBSDでZabbixを動かす
kenkino
0
340
C#の現在地 進化の歴史と、AI時代の.NET Everywhere
neuecc
5
4.7k
re:Inventに行く前に知っておきたい現地参加のノウハウ
nokomoro3
0
290
Embedded Swiftで作る自作USBデバイス によるiOSデバイスの自動テスト / iOSDC Japan 2026 glassfiber
glassfiber
0
250
WebRTC映像をAirPlayに対応させる挑戦.pdf
monolithic_adam
0
330
半永久的に提供し続けられるプライベートクラウドを目指して ― 利用者の認知負荷を抑えるAPI抽象化とハードウェア世代交代の基盤設計
tomokon
0
380
setup-vp GitLab対応の裏側
naokihaba
0
140
MVNOの申込からeSIM開通までをiOSアプリでつなぐ- 本人確認・MNP・通信事業者基盤をまたぐ実装
satotakeshi
0
520
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
370
App Storeの外へ──日本のiOSサイドローディング入門 for iOSDC Japan 2026
yuukiw00w
0
280
巨大モノリシックアプリ モダン化大作戦
ktcryomm
1
1.2k
そのリトライ、死んだコネクションを使い回していませんか ── GoのHTTPクライアントとHTTP/2を実プロダクト障害から学び直す
myus4a
0
350
Featured
See All Featured
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
450
Paper Plane (Part 1)
katiecoart
PRO
2
11k
Marketing to machines
jonoalderson
1
5.8k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.4k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.7k
SEO for Brand Visibility & Recognition
aleyda
0
4.8k
Utilizing Notion as your number one productivity tool
mfonobong
4
610
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Between Models and Reality
mayunak
4
480
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
410
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
590
Docker and Python
trallard
47
4.2k
Transcript
BY Ψϧϖϊ 2021/05/31 CCKͰͰ͖ΔʂNPCͷAIϩδοΫ ୈ5ճclusterΏΔΏΔษڧձ
͢ਓɿΨϧϖϊ • ओʹήʔϜϫʔϧυͳͲΛ࡞Δ • ΠϕϯτΛओ࠵͢Δ͜ͱ͋Δ • VRͱͭΑͭΑPCڥ·͍ͩ࣋ͬͯͳ͍ • ήʔϜCCKҎ֎Ͱ࡞ͬͨ͜ͱͳ͍ •
࠷ۙμϯΨϯϩϯύΛ࠶ϓϨΠͯ͠ ໄڹࢠ͞Μ͕ૉఢͩͳʔͱࢥͬͯΔ 2
LT༰ɾҙ • CCKͷجຊతͳίϯϙʔωϯτͰͰ͖Δ NPCͷߦಈཧAIͷ࡞ΓํΛ֓આ͠·͢ • ͜͜Ͱఆ͢ΔNPC ʮ1ϫʔϧυʹ1ମͷϘεʯͰ͋Γɺ ʮ1ϫʔϧυʹଟͷMobʯͳͲʹ͍ͭͯ Ԡ༻ͱ͠·͢ •
͋ΒΏΔঢ়گʹରॲͰ͖ΔߴͳAIͰ ͋Γ·ͤΜɻҠಈ੍ޚ߈ܸύλʔϯʹ গ͠ͷੑΛ࣋ͨͤΔͷͰ͢ 3
ࢀߟϫʔϧυ • ্ɿʲҰਓ༻ʳϩϘϑΝΠτνϡʔτϦ ΞϧʲରCPUઓʳ ɾࡢήʔϜϫʔϧυഋͷ෭࢈ ɾvsϓϨΠϠʔͱରͳఢNPCϩϘ ɾલޙࠨӈʹҠಈͭͭ͠ɺ߈ܸͯ͘͠Δ • Լɿ࢝·ΓͷྦɺऴΘΓͷඍসʢྗͷ ͱӨͷϋʔυϞʔυʣ
ɾࡢGAMEJAMౙͷൃల൛ ɾvsϓϨΠϠʔΑΓڧେͳϥεϘε ɾҰՕॴʹͱͲ·ͬͯ߈ܸͯ͘͠Δ 4
CCKͰͰ͖ΔʂNPCͷAIϩδοΫ 1. NPC͕ొ͢Δ 2. αΠΫϧΛճ͢TriggerΛ༩͑Δ 3. ߦಈύλʔϯΛબ͢Δ 4. ߦಈ͢Δ 5.
ߦಈऴྃͰTriggerΛग़͢ 3ʹΔ 6. ͞ΕͨΒຊମΛඇΞΫςΟϒԽ͠ɺ ͞ΕϞʔγϣϯ༻ͷNPCΛΞΫςΟϒԽ͢Δʢߦಈ͕ࠞ͟ΔͷͰແཧཧ͔͛͑͢Δʣ جຊతͳߦಈཧͷྲྀΕ αΠΫϧ Lottery TimerͳͲ
CCKͰͰ͖ΔʂNPCͷAIϩδοΫ • Trigger Lotteryʢඞཁʣ ߦಈཧʹϥϯμϜੑΛ࣋ͨͤ·͢ɻϓϨΠϠʔΛ͖ͤ͞ͳ͍ཁૉ͕ੜ·Ε·͢ • Timerʢඞཁʣ ߦಈཧͰαΠΫϧΛճ͢ࡍʹඞཁͰ͢ɻαΠΫϧΊͬͨʹ్ઈ͠·ͤΜ • LogicͳͲʢԠ༻ʣ
ߦಈྙཧʹ෯ΛՃ͑·͢ɻϓϨΠϠʔΛ͖ͤ͞ͳ͍ཁૉΛ͞ΒʹੜΈ·͢ ࣮ʹඞཁͳίϯϙʔωϯτ 6
࣮ʹඞཁͳίϯϙʔωϯτʢඞཁʣ Trigger Lottery • ߦಈཧʹϥϯμϜੑΛ࣋ͨͤ·͢ • ྫɿ1/4ͷ֬Ͱશମ߈ܸɺ2/4ͷ֬Ͱ ूத߈ܸɺ1/4ͷ֬ͰػϞʔγϣϯ • ߦಈύλʔϯܾఆTriggerͱಉ࣌ʹɺ
ޙड़ͷTimerʹ͚ͯTriggerΛग़͢ • ൺॏΛม͑Δ͜ͱͰNPCʹߦಈಛੑΛ࣋ ͨͤΒΕΔ • ύλʔϯ͕ݻఆ͞ΕͣɺͲ͖Ͳ͖Θ͘Θ ͘ײ͕ੜ·ΕΔʂ 7 [ҠಈαΠΫϧ] [લਐ] WEIGHT: 1.5 [ޙୀ] WEIGHT: 1.5 [ӈฏߦҠಈ] WEIGHT: 2 [ࠨฏߦҠಈ] WEIGHT: 2 [ఀࢭ] WEIGHT: 3 ϩϘϑΝΠτͷNPCϩϘͷϥϯμϜҠಈ ↑Ҡಈorఀࢭͷϝοηʔδͱಉ࣌ʹTimerͷSIgnalग़͢ CCKͰͰ͖ΔʂNPCͷAIϩδοΫ
࣮ʹඞཁͳίϯϙʔωϯτʢඞཁʣ Timer • ߦಈཧͰαΠΫϧΛճ͢ࡍʹඞཁͰ͢ • ઌड़ͷLottery͔ΒૹΒΕͨTriggerΛड ͚औΓɺͦͷߦಈύλʔϯ࣌ؒػɺ ͦͷޙLotteryTriggerΛૹΔ • ͔ͬ͠ΓϝοηʔδΛཧ͢Εେਓ
ͰΠϕϯτͰαΠΫϧ్͕ઈ͠ͳ͍ • ͨͩ߈ܸΛ͘ΒͬͨϞʔγϣϯͳͲΛڬ Ήͱߦಈ͕ࠞ͟Δ͜ͱ͋Γ 8 ϩϘϑΝΠτͷNPCϩϘͷαΠΫϧTimer ↑1ඵपظͷαΠΫϧɻ NPCϩϘ1ඵ͝ͱʹҠಈ੍ޚΛϥϯμϜʹબΜͰ͍Δ CCKͰͰ͖ΔʂNPCͷAIϩδοΫ
࣮ʹඞཁͳίϯϙʔωϯτʢԠ༻ʣ LogicͳͲ • ߦಈཧʹ෯ΛՃ͑·͢ • ϩϘɿඃͨ͠Βଈ࠲ʹߦಈબ ऴᖼఱɿମྗͷ͜ΓͰ߈ܸ ύλʔϯมԽ • ߦಈதউखʹ࣍ͷߦಈͰ্ॻ͖
͞Εͳ͍Α͏LogicΛೖΕΔඞཁ ͋ΔʢͦΕͰϥάͰ্ॻ͖͞ΕΔ͜ͱ͕͋Δʣ • ࣮ͱσόοάʹࠜؾ͕ඞཁ🙀 9 ϩϘϑΝΠτͷNPCϩϘ ࢝·ΓͷྦͷऴᖼఱʢϥεϘεʣ ↑ඃͨ͠ΒࠨӈʹҠಈ͢Δ੍ޚɻ ൺॏઃఆͰʮӈʹಀ͕͛ͪʯͱ͍͏ “บ”“ߦಈಛੑ”ΛઃఆͰ͖Δ ↑HP͕8Ҏ্ͷ࣌ͱ8ະຬͷ࣌Ͱ ߦಈύλʔϯΛม͑Δɻ 8Ҏ্ͷ࣌εΩͷଟ͍߈ܸɺ 8ະຬʹͳΔͱ߈ܸ࣌ͷεΩ͕ݮΔɻ ઓಆʹ׳ΕͨϓϨΠϠʔΛ͖ͤ͞ͳ͍ CCKͰͰ͖ΔʂNPCͷAIϩδοΫ
࢝·ΓͷྦͷऴᖼఱʢϥεϘεʣ AIߦಈྫ • ొޙඞͣεΩগϨʔβʔ ίπΛͬͯΔϓϨΠϠʔΛ͖ͤ͞ͳ͍ͨΊ • લεΩ͕ଟΊͷ߈ܸͰɺޙʹͳΔ ͱεΩ͕ݮΔ • ߈ܸϞʔγϣϯҎ֎ʹ4ඵͷػϞʔ
γϣϯ͕1/5ͷ֬ͰೖΔʢೖΕ͗͢ҙʣ • HP͕0ʹͳͬͨॠؒDestroy͠ɺΒΕઐ༻ͷ ϥεϘεΛొͤͯ͞౼െΛԋग़͢ΔʢڧҾʣ CCKͰͰ͖ΔʂNPCͷAIϩδοΫ [ػ] [εΩଟϨʔβʔ] [εΩগϨʔβʔ] [֦ࢄϨʔβʔ] લઓ ޙઓ [ඃܸ] LotteryͳͲ [ొ] [౼െ]
ϩϘϑΝΠτͷCPUϩϘ AIߦಈྫ • Ҡಈ੍ޚͱ੍ࣹܸ͕ผʹͳ͍ͬͯΔɻ ੍ࣹܸ͕ͨͩ͠٭෦ͷΞχϝʔγϣϯΛ্ॻ͖͠ ͯ͠·͍ͬͯΔͷͰɺAnimationͷLayer͚͕ඞཁ • ϓϨΠϠʔϩϘͷۙͰ༗ޮࣹఔΛݕ ͠߈ܸͯ͘͠ΔɻࣹఔݍʹଈϑϧΦʔτ ڧ͗ͨ͢ͷͰؾ·͙Εʹܸͬͯ͘ΕΔΑ͏ʹͨ͠
• ༗ޮࣹఔݕΛԠ༻͢ΕɺϓϨΠϠʔ ͔ΒΕͨΒ͖ۙͮɺۙ͗ͨ͢ΒΕΔ ͳͲͷߦಈಛੑ࣮Ͱ͖Δ CCKͰͰ͖ΔʂNPCͷAIϩδοΫ [ػ] ඃ LotteryͳͲ [ొ] [ܸഁ] ʢ࣮ෆશʣ [ࠨӈʹಈ͍ͯࣼઢΛΔ] ʢӈʹಀ͛Δบ͕͋Δʣ [Ҡಈɿલޙࠨӈ] Lottery ٭෦ Ҡಈ੍ޚ ϓϨΠϠʔϩϘ͕ ۙ(OnCollide) Lottery [ؾ·͙Εࣹܸ] ্ମ ੍ࣹܸ
͍͜͠ΖɺԶΕ͔͚ͱΔ
࣭λΠϜ