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
ごっこランドをささえる技術 〜AssetBundle 編〜/AssetBundle Fully...
Search
Tetsuya Mori
PRO
March 24, 2019
Programming
3
6.9k
ごっこランドをささえる技術 〜AssetBundle 編〜/AssetBundle Fully Understood
2019年3月24日に開催された「Unity AssetBundle 完全に理解した」の登壇スライドです。
Tetsuya Mori
PRO
March 24, 2019
Tweet
Share
More Decks by Tetsuya Mori
See All by Tetsuya Mori
ビルドシステムを C# 大統一したお話
monry
PRO
2
1.2k
C# 大統一理論推進委員会 会員のための Unity Package Manager プロジェクト構成案
monry
PRO
0
1.4k
はじめての C# 大統一理論
monry
PRO
0
730
unity1week でチーム開発を成功させる秘訣
monry
PRO
0
230
Unity で ARゲームを作った話
monry
PRO
1
780
Visual Programming Framework UniFlow のご紹介/Introducing UniFlow
monry
PRO
2
2.9k
UniFlow 完全に理解した / I can develop UniFlow a little.
monry
PRO
0
520
Democratized Unity Package Manager
monry
PRO
1
2.7k
使ってみよう! Unity RemoteSettings/Let's use Unity RemoteSettings
monry
PRO
1
1.1k
Other Decks in Programming
See All in Programming
20250426 GDGoC 合同新歓 - GDGoC のススメ
getty708
0
120
Ruby で作る RISC-V CPU エミュレーター / RISC-V CPU emulator made with Ruby
hayaokimura
5
1.2k
データと事例で振り返るDevin導入の"リアル" / The Realities of Devin Reflected in Data and Case Studies
rkaga
3
2.7k
VitestのIn-Source Testingが便利
taro28
9
2.5k
Vibe Coding の話をしよう
schroneko
14
3.9k
OpenTelemetryで始めるベンダーフリーなobservability / Vendor-free observability starting with OpenTelemetry
seike460
PRO
0
130
Duke on CRaC with Jakarta EE
ivargrimstad
1
250
事業KPIを基に価値の解像度を上げる
nealle
0
150
生成AI時代のフルスタック開発
kenn
8
1k
医療系ソフトウェアのAI駆動開発
koukimiura
1
140
Serving TUIs over SSH with Go
caarlos0
0
770
設計の本質:コード、システム、そして組織へ / The Essence of Design: To Code, Systems, and Organizations
nrslib
10
3.9k
Featured
See All Featured
How GitHub (no longer) Works
holman
314
140k
Optimising Largest Contentful Paint
csswizardry
37
3.2k
Being A Developer After 40
akosma
91
590k
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
Agile that works and the tools we love
rasmusluckow
329
21k
Making Projects Easy
brettharned
116
6.2k
Navigating Team Friction
lara
185
15k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
24
2.7k
Site-Speed That Sticks
csswizardry
6
560
A better future with KSS
kneath
239
17k
Building Adaptive Systems
keathley
41
2.5k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.5k
Transcript
גࣜձࣾΩοζελʔ$50 ɹ࠸ ͬ͜͝ϥϯυΛ͑͞͞Δٕज़ d"TTFU#VOEMFฤd 6OJUZ"TTFU#VOEMFશʹཧղͨ͠BUNJYJ*OD
͜Μʹͪʂ
w-5֓ཁ w"TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w"TTFU#VOEMFӡ༻ࣄྫհ w·ͱΊ wࣗݾհ ΞδΣϯμ
w-5֓ཁ w"TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w"TTFU#VOEMFӡ༻ࣄྫհ w·ͱΊ wࣗݾհ ΞδΣϯμ ΠϚίί
ࠓͷ͓ͷ֓ཁ
w͜Ε͔Βʮ"TTFU#VOEMFશʹཧղ ͢Δʯਓ w"TTFU#VOEMFͷӡ༻ํ๏ʹΉ %FW0QTͳਓ w"EESFTTBCMF"TTFU4ZTUFN ʹ͍ͭͯΓ͍ͨਓ ࠓͷରऀ ֓ཁ
˰śūŢŒţ
w"TTFU#VOEMFͷجૅࣝ w"TTFU#VOEMFͷӡ༻ࣄྫ ࠓ͢ίτ ֓ཁ
w"EESFTTBCMF"TTFU4ZTUFN wJ04μϯϩʔυαΠζ໌هରԠ ࠓ͞ͳ͍ίτ ֓ཁ
wຊͷεϥΠυ͓Αͼߨԋಈը 6OJUZ-FBSOJOH.BUFSJBMTʹͯ ެ։༧ఆͰ͢ w4/4ͷγΣΞେܴͰ͢ʂ ͦͷଞ ֓ཁ
ͦͷଞ ֓ཁ
ຊ
w-5֓ཁ w"TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w"TTFU#VOEMFӡ༻ࣄྫհ w·ͱΊ wࣗݾհ ΞδΣϯμ ΠϚίί
"TTFU#VOEMFʹ͍ͭͯ ͓͞Β͍
"TTFU#VOEMFJTԿʁ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ "TTFU Λ #VOEMF ͨ͠ͷ
"TTFU#VOEMFJTԿʁ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w6OJUZ্Ͱ*NQPSUͨ͠"TTFU ΛϥϯλΠϜͰಈతಡΈࠐΈ ͢ΔͨΊͷΈ w͍ΘΏΔμϯϩʔυίϯςϯπ
"TTFU#VOEMFJTԿʁ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w6OJUZͱ͔ͷ͔࣌Βଘࡏ w6OJUZͰେ෯ʹػೳվળ
Կ͕خ͍͠ͷʁ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ wϏϧυ͞Εͨ1MBZFSͷαΠζΛ ݮͰ͖Δ 1MBUGPSN 4J[F "QQ4UPSF .#
(PPHMF1MBZ .# ˞ϓϥοτϑΥʔϜຖͷόΠφϦαΠζ੍ݶ
Կ͕خ͍͠ͷʁ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w1MBZFSΛϏϧυ͢Δ͜ͱͳ͘ "TTFUΛߋ৽Ͱ͖Δ wͨͩ͠ɺ$εΫϦϓτߋ৽ෆՄ
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ "TTFU#VOEMF .BOJGFTU "TTFU#VOEMF "TTFU#VOEMF 3FRVFTU #VJME1JQFMJOF
#VJME"TTFU#VOEMFT "TTFU#VOEMF #VJME $BDIJOH 6OJUZ8FC3FRVFTU "TTFU#VOEMF "TTFU#VOEMF $SFBUF3FRVFTU "TTFU#VOEMF /BNF7BSJBOU 4USFBNFE4DFOF "TTFU#VOEMF
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w"TTFU#VOEMF w-;ͳͲͷΞϧΰϦζϜΛ༻͍ͯ "TTFUΛݻΊͨόΠφϦϑΝΠϧ •UnityEngine.AssetBundleΛ ༻͍ͯ"TTFUΛऔΓग़͢
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w"TTFU#VOEMF w"TTFUΛϋογϡԽͨ͠ "TTFU'JMF)BTIΛ࣋ͭ wΫϥεߏΛϋογϡԽͨ͠ 5ZQF5SFF)BTIͬͯͷ͋Δ
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ "TTFU#VOEMF .BOJGFTU "TTFU#VOEMF "TTFU#VOEMF 3FRVFTU #VJME1JQFMJOF
#VJME"TTFU#VOEMFT "TTFU#VOEMF #VJME $BDIJOH 6OJUZ8FC3FRVFTU "TTFU#VOEMF "TTFU#VOEMF $SFBUF3FRVFTU "TTFU#VOEMF /BNF7BSJBOU 4USFBNFE4DFOF "TTFU#VOEMF
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w4USFBNFE4DFOF"TTFU#VOEMF w4DFOFࣗମΛ"TTFU#VOEMFͱ ͯ͠ݻΊͨϞϊ wجຊతʹ௨ৗͷ"TTFU#VOEMF ͱಉ͡
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w4USFBNFE4DFOF"TTFU#VOEMF w"TTFU#VOEMF͕-PBE͞ΕΔͱ 4DFOF.BOBHFS͔ΒΞΫηεՄ ೳʹͳΔ wґଘ"TTFU#VOEMF͕͋Δ߹ɺ ࣄલʹ-PBE͓ͯ͘͠ඞཁ͕͋Δ
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ "TTFU#VOEMF .BOJGFTU "TTFU#VOEMF "TTFU#VOEMF 3FRVFTU #VJME1JQFMJOF
#VJME"TTFU#VOEMFT "TTFU#VOEMF #VJME $BDIJOH 6OJUZ8FC3FRVFTU "TTFU#VOEMF "TTFU#VOEMF $SFBUF3FRVFTU "TTFU#VOEMF /BNF7BSJBOU 4USFBNFE4DFOF "TTFU#VOEMF
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w"TTFU#VOEMF/BNF w"TTFU#VOEMFͷ໊લ w*OTQFDUPSͰઃఆ͢Δ wޙड़ͷ"TTFU#VOEMF#VJMEͰ ઃఆ͢ΔίτՄೳ
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w"TTFU#VOEMF/BNF w"TTFU#VOEMFϏϧυ࣌ʹ͜ͷ͕ ͦͷ··ύεͱͯ͠ར༻͞ΕΔ w֦ுࢠ.unity3dͱ͔͕ଟ͍ʁ w/ͰσΟϨΫτϦ۠ΓՄೳ
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w"TTFU#VOEMF7BSJBOU w4%)%ସ-PDBMJ[BUJPOʹ༻͍Δ w"EESFTTBCMF͕αϙʔτͯ͠ ͘Εͳ͍Β͍͠ͷͰݪଇඇਪ wࢀߟIUUQTRJJUBDPNLB JUFNTDFCFB
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ "TTFU#VOEMF .BOJGFTU "TTFU#VOEMF "TTFU#VOEMF 3FRVFTU #VJME1JQFMJOF
#VJME"TTFU#VOEMFT "TTFU#VOEMF #VJME $BDIJOH 6OJUZ8FC3FRVFTU "TTFU#VOEMF "TTFU#VOEMF $SFBUF3FRVFTU "TTFU#VOEMF /BNF7BSJBOU 4USFBNFE4DFOF "TTFU#VOEMF
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w"TTFU#VOEMF.BOJGFTU w"TTFU#VOEMFͷ wϏϧυ୯Ґʹੜ͞ΕΔ w)BTIґଘؔΛཧ wαΠζใ࣋ͨͳ͍
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w"TTFU#VOEMF.BOJGFTU w)BTIґଘؔͳͲΛ ͍߹ΘͤΔࡍʹ "TTFU#VOEMF/BNFΛ༻͍Δ
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w"TTFU#VOEMF.BOJGFTU w*.manifestతͳ:".-ϑΝΠϧ ผϞϊ wϏϧυ࣌ͷࠩݕग़ͷͨΊʹ ͍ͬͯΔͬΆ͍ʁ
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ "TTFU#VOEMF .BOJGFTU "TTFU#VOEMF "TTFU#VOEMF 3FRVFTU #VJME1JQFMJOF
#VJME"TTFU#VOEMFT "TTFU#VOEMF #VJME $BDIJOH 6OJUZ8FC3FRVFTU "TTFU#VOEMF "TTFU#VOEMF $SFBUF3FRVFTU "TTFU#VOEMF /BNF7BSJBOU 4USFBNFE4DFOF "TTFU#VOEMF
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w6OJUZ8FC3FRVFTU"TTFU#VOEMF w"TTFU#VOEMFΛΠϯλʔωοπ ͔Βऔಘ͢Δ wfile://ͰϩʔΧϧ͔ΒऔಘՄೳ
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w6OJUZ8FC3FRVFTU"TTFU#VOEMF w%PXOMPBE)BOEMFS"TTFU#VOEMF Λ௨͢͜ͱͰॲཧਐḿͳͲΛཧ͢Δ
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ "TTFU#VOEMF .BOJGFTU "TTFU#VOEMF "TTFU#VOEMF 3FRVFTU #VJME1JQFMJOF
#VJME"TTFU#VOEMFT "TTFU#VOEMF #VJME $BDIJOH 6OJUZ8FC3FRVFTU "TTFU#VOEMF "TTFU#VOEMF $SFBUF3FRVFTU "TTFU#VOEMF /BNF7BSJBOU 4USFBNFE4DFOF "TTFU#VOEMF
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w"TTFU#VOEMF$SFBUF3FRVFTU w"TTFU#VOEMFΛ ϩʔυ͢Δࡍͷ"TZOD0QFSBUJPO wAssetBundle.LoadFromFileAsync() AssetBundle.LoadFromMemoryAsync() ͳͲͷΓ
w6OJUZ8FC3FRVFTUΛ͏߹ొ͠ͳ͍
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ "TTFU#VOEMF .BOJGFTU "TTFU#VOEMF "TTFU#VOEMF 3FRVFTU #VJME1JQFMJOF
#VJME"TTFU#VOEMFT "TTFU#VOEMF #VJME $BDIJOH 6OJUZ8FC3FRVFTU "TTFU#VOEMF "TTFU#VOEMF $SFBUF3FRVFTU "TTFU#VOEMF /BNF7BSJBOU 4USFBNFE4DFOF "TTFU#VOEMF
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w"TTFU#VOEMF3FRVFTU w"TTFU#VOEMF͔Β"TTFUΛ ϩʔυ͢Δࡍͷ"TZOD0QFSBUJPO wAssetBundle.LoadAssetAsync<T>() ͳͲͷΓ
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ "TTFU#VOEMF .BOJGFTU "TTFU#VOEMF "TTFU#VOEMF 3FRVFTU #VJME1JQFMJOF
#VJME"TTFU#VOEMFT "TTFU#VOEMF #VJME $BDIJOH 6OJUZ8FC3FRVFTU "TTFU#VOEMF "TTFU#VOEMF $SFBUF3FRVFTU "TTFU#VOEMF /BNF7BSJBOU 4USFBNFE4DFOF "TTFU#VOEMF
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w$BDIJOH w6OJUZ8FC3FRVFTU"TTFU#VOEMF ܦ༝Ͱऔಘͨ͠߹ɺϤγφʹΩϟογϡ ͯ͘͠ΕΔ w"TTFU'JMF)BTIΛΓऔΓ͢Δ͜ͱͰ Ωϟογϡ༗ແͷ֬ೝݸผͷআ͕Մೳ
ʹͳΔ
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w$BDIJOH wY͔Β Caching.IsVersionCachedͳͲͷ Ұ෦ͷϝιου͕0CTPMFUFʹ wCaching.GetCachedVersions()Λ ͍·͠ΐ͏
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ "TTFU#VOEMF .BOJGFTU "TTFU#VOEMF "TTFU#VOEMF 3FRVFTU #VJME1JQFMJOF
#VJME"TTFU#VOEMFT "TTFU#VOEMF #VJME $BDIJOH 6OJUZ8FC3FRVFTU "TTFU#VOEMF "TTFU#VOEMF $SFBUF3FRVFTU "TTFU#VOEMF /BNF7BSJBOU 4USFBNFE4DFOF "TTFU#VOEMF
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w#VJME1JQFMJOF#VJME"TTFU#VOEMFT w"TTFU#VOEMF"TTFU#VOEMF .BOJGFTUΛߏங wBuildPipeline.BuildAssetBundles()ͷ Γ"TTFU#VOEMF.BOJGFTU
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ "TTFU#VOEMF .BOJGFTU "TTFU#VOEMF "TTFU#VOEMF 3FRVFTU #VJME1JQFMJOF
#VJME"TTFU#VOEMFT "TTFU#VOEMF #VJME $BDIJOH 6OJUZ8FC3FRVFTU "TTFU#VOEMF "TTFU#VOEMF $SFBUF3FRVFTU "TTFU#VOEMF /BNF7BSJBOU 4USFBNFE4DFOF "TTFU#VOEMF
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w"TTFU#VOEMF#VJME w*OTQFDUPSΛհͣ͞ʹ"TTFU#VOEMF ͷϏϧυใΛߏங͢ΔͨΊͷߏମ wύε7BSJBOUͳͲΛࡉ੍͔͘ޚ͍ͨ͠ ߹ʹίϨΛ༻͍Δ
"TTFU#VOEMFͷߏཁૉ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w"TTFU#VOEMF#VJME wBuildPipeline.BuildAssetBundles() ʹΦʔόʔϩʔυ͕͋Δ
"TTFU#VOEMF%FQFOEFODZ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w"TTFU#VOEMFͷ"TTFU·ͨ "TTFU#VOEMFͰ͋Δঢ়ଶΛґଘͱ ݺͿ
"TTFU#VOEMF%FQFOEFODZ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w"TTFU#VOEMFϏϧυ࣌ʹ6OJUZ͕ ϤγφʹґଘใΛऩू w"TTFU#VOEMF.BOJGFTUʹه wґଘݩ"TTFUΛ-PBE͢Δલʹ ґଘઌ"TTFUΛશͯ-PBE͢Δඞཁ͋Γ
"TTFU#VOEMF%FQFOEFODZ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ wదʹઃఆ͠ͳ͍ͱ"TTFUίϐʔ ͕ى͖Δ wৄ͘͠ςϥγϡʔϧϒϩά͞· IUUQUTVCBLJUIBUFCMPKQFOUSZ
"TTFU#VOEMF%FQFOEFODZ "TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ %FNP
w-5֓ཁ w"TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w"TTFU#VOEMFӡ༻ࣄྫհ w·ͱΊ wࣗݾհ ΞδΣϯμ ΠϚίί
"TTFU#VOEMFͷӡ༻ࣄྫ
w"QQ4UPSF(PPHMF1MBZʹͯ ৴தͷࢠͲ͚৬ۀମݧΞϓϦ wສ%-݄ؒϓϨΠ ສճ wύϏϦΦϯͱݺΕΔ࣮ࡏاۀͷ ͓ࣄΛମݧͰ͖ΔϛχήʔϜू w݄࣌ͰݸͷύϏϦΦϯ ͬ͜͝ϥϯυʹ͍ͭͯ
"TTFU#VOEMFͷӡ༻ࣄྫ
w֤ύϏϦΦϯΛݸผͷ6OJUZϓϩδΣΫτ ͱͯ͠։ൃ wϏϧυαʔόͰ$εΫϦϓτΛϚʔδ ͯ͠1MBZFSϏϧυ w4DFOFΛؚΉશ"TTFU "TTFU#VOEMFʹͯఏڙ ͬ͜͝ϥϯυʹ͍ͭͯ "TTFU#VOEMFͷӡ༻ࣄྫ
w"TTFU#VOEMF֤ύϏϦΦϯͷ6OJUZ ϓϩδΣΫτଆͰϏϧυ wϓϩδΣΫτؒͰڞ༗͢ΔϥΠϒϥϦ OQNͰఏڙʢ(JU)VC͔Βऔಘʣ w(6*%Λڞ༗ wϓϩδΣΫτͦͷͷOQNͰ৴ ͬ͜͝ϥϯυʹ͍ͭͯ "TTFU#VOEMFͷӡ༻ࣄྫ
ͬ͜͝ϥϯυʹ͍ͭͯ "TTFU#VOEMFͷӡ༻ࣄྫ
w4USFBNFE4DFOF"TTFU#VOEMF Λϑϧ׆༻ wߋ৽සʹԠͯ͡4DSJQUBCMF0CKFDU ͳͲΛݸผʹ"TTFU#VOEMFԽ w"TTFU#VOEMF.BOJGFTUͦͷͷ ಈతߋ৽ͷରʹ "TTFU#VOEMFઓུ "TTFU#VOEMFͷӡ༻ࣄྫ
wΞοϓϩʔυઌ4UBHJOHͱ 1SPEVDUJPOΛ͚ͯ࡞ wσϓϩΠ༻ͷ+FOLJOT+PCΛ࡞ "TTFU#VOEMFઓུ "TTFU#VOEMFͷӡ༻ࣄྫ
wύϏϦΦϯ͝ͱʹσΟϨΫτϦΛׂ "TTFU#VOEMFઓུ "TTFU#VOEMFͷӡ༻ࣄྫ
wϓϥοτϑΥʔϜ͝ͱʹσΟϨΫτϦ Λׂ "TTFU#VOEMFઓུ "TTFU#VOEMFͷӡ༻ࣄྫ ˞ΤσΟλͰͷݕূ༻ʹ4UBOEBMPOF༻ҙ
w"TTFU'JMF)BTIΛϑΝΠϧ໊ʹ ͢Δ͜ͱͰෆਖ਼ͳ্ॻ͖Λ༧ "TTFU#VOEMFઓུ "TTFU#VOEMFͷӡ༻ࣄྫ
w"TTFU#VOEMF.BOJGFTUͷ όʔδϣϯ൪߸ύϏϦΦϯຖʹ 4DSJQUBCMF0CKFDUͰཧ w֤ύϏϦΦϯͷResources/ʹஔ "TTFU#VOEMFઓུ "TTFU#VOEMFͷӡ༻ࣄྫ
w 6OJUZ8FC3FRVFTUΛ6OJ3Y ରԠͨ͠ϥΠϒϥϦΛ࡞ w <(JU)VC> w IObservable<AssetBundle> "TTFU#VOEMFಡΈࠐΈ
"TTFU#VOEMFͷӡ༻ࣄྫ
w ύϏϦΦϯʹೖΔλΠϛϯάͰߋ৽νΣο ΫΛߦ͏ w 6OJUZ3FNPUF4FUUJOHTར༻ w औಘͨ͠"TTFU#VOEMF.BOJGFTU ͷόʔδϣϯΛอଘ w ΦϑϥΠϯ࣌νΣοΫΛߦΘͳ͍
"TTFU#VOEMFಡΈࠐΈ "TTFU#VOEMFͷӡ༻ࣄྫ
ಡΈࠐΈରγʔϯͷґଘΛ-PBE ಡΈࠐΈରγʔϯΛ-PBE SceneManager.LoadSceneAsync() ಡΈࠐΜͩ"TTFU#VOEMFΛ AssetBundle.Unload(false)
γʔϯಡΈࠐΈ "TTFU#VOEMFͷӡ༻ࣄྫ
w+FOLJOT͓͡͞Μ͕ଉ w1MBZFS"TTFU#VOEMFͷϏϧυΛ ୲ w4MBDL͔ΒίϚϯυ͛Δ wৄ͘͠IUUQTNPOSZIBUFOBCMPHDPN FOUSZVOJUZBEWFOUDBMFOEBS Ϗϧυαʔό "TTFU#VOEMFͷӡ༻ࣄྫ
wϓϥοτϑΥʔϜຖʹDMPOFઌΛ ͚͍ͯΔ w4XJUDI1MBUGPSNͷ࣌ؒॖ w"TTFU#VOEMFϏϧυͷྲྀΕͰ αʔόʢ4ʣʹΞοϓϩʔυ Ϗϧυαʔό "TTFU#VOEMFͷӡ༻ࣄྫ
BuildPipeline.BuildAssetBundles() ࠩϦετΞοϓ "TTFU#VOEMF.BOJGFTUΞοϓϩʔυ "TTFU#VOEMFΞοϓϩʔυ HJUQVTI
Ϗϧυαʔό "TTFU#VOEMFͷӡ༻ࣄྫ
BuildPipeline.BuildAssetBundles() ࠩϦετΞοϓ "TTFU#VOEMF.BOJGFTUΞοϓϩʔυ "TTFU#VOEMFΞοϓϩʔυ HJUQVTI
Ϗϧυαʔό "TTFU#VOEMFͷӡ༻ࣄྫ "TTFU#VOEMF/BNF ࣄલʹઃఆ͓ͯ͘͠ ग़ྗઌ #VJME"TTFU#VOEMFT\QMBUGPSN^ͳͲ
BuildPipeline.BuildAssetBundles() ࠩϦετΞοϓ "TTFU#VOEMF.BOJGFTUΞοϓϩʔυ "TTFU#VOEMFΞοϓϩʔυ HJUQVTI
Ϗϧυαʔό "TTFU#VOEMFͷӡ༻ࣄྫ HJUTUBUVTͳͲͰ มߋͷ͋ΔϞϊͷΈநग़
BuildPipeline.BuildAssetBundles() ࠩϦετΞοϓ "TTFU#VOEMF.BOJGFTUΞοϓϩʔυ "TTFU#VOEMFΞοϓϩʔυ HJUQVTI
Ϗϧυαʔό "TTFU#VOEMFͷӡ༻ࣄྫ Ϗϧυຖʹόʔδϣχϯά όʔδϣϯ൪߸ʹϦωʔϜͯ͠ Ξοϓϩʔυ
BuildPipeline.BuildAssetBundles() ࠩϦετΞοϓ "TTFU#VOEMF.BOJGFTUΞοϓϩʔυ "TTFU#VOEMFΞοϓϩʔυ HJUQVTI
Ϗϧυαʔό "TTFU#VOEMFͷӡ༻ࣄྫ "TTFU'JMF)BTIʹϦωʔϜͯ͠ Ξοϓϩʔυ
BuildPipeline.BuildAssetBundles() ࠩϦετΞοϓ "TTFU#VOEMF.BOJGFTUΞοϓϩʔυ "TTFU#VOEMFΞοϓϩʔυ HJUQVTI
Ϗϧυαʔό "TTFU#VOEMFͷӡ༻ࣄྫ ϒϥϯν࡞ͬͯ 1VMM3FRVFTU࡞Δ
w-5֓ཁ w"TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w"TTFU#VOEMFӡ༻ࣄྫհ w·ͱΊ wࣗݾհ ΞδΣϯμ ΠϚίί
·ͱΊ
w"TTFU#VOEMFབྷΈͷ֓೦Λ શʹཧղ͠Α͏ʂ w4USFBNFE4DFOF"TTFU#VOEMF ศརʂ w͔ͬ͠ΓϏϧυαʔόߏ͑Δͱ ޙʑָʹͳΔ ʢϝϯςେม͚ͩͲͶʜɻʣ ·ͱΊ
·ͱΊ
·ͱΊ ·ͱΊ
wຊͬͨσϞϓϩδΣΫτ w IUUQTHJUIVCDPNNPOSZ EFCVHHFS@EFNP "QQFOEJY
w-5֓ཁ w"TTFU#VOEMFʹ͍͓ͭͯ͞Β͍ w"TTFU#VOEMFӡ༻ࣄྫհ w·ͱΊ wࣗݾհ ΞδΣϯμ ΠϚίί
ࣗݾհ
8IPBN* ࣗݾհ @monry a.k.a. ΜΓ͌ઌੜ
8IPBN* ࣗݾհ w.JDSPTPGU.71 GPS%FWFMPQFS5FDIOPMPHJFT w6OJUZ"NCBTTBEPS
+PC ࣗݾհ ࢠͲ͚ΞϓϦ࡞ͬͯΔձࣾͰ $50ͬͯ·͢
13 ࣗݾհ ϚϯΨͰΘ͔Δ Unity ධ࿈ࡌதʂ
13 ࣗݾհ #ͷϥδ ύʔιφϦςΟͬͯ·͢ʂ ήετืूதʂ
5IBOLZPVGPSZPVS BUUFOUJPO