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
PostProcessBuild のおはなし
Search
Tetsuya Mori
PRO
February 14, 2014
Programming
92
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
PostProcessBuild のおはなし
Tetsuya Mori
PRO
February 14, 2014
More Decks by Tetsuya Mori
See All by Tetsuya Mori
ビルドシステムを C# 大統一したお話
monry
PRO
2
1.5k
C# 大統一理論推進委員会 会員のための Unity Package Manager プロジェクト構成案
monry
PRO
0
1.7k
はじめての C# 大統一理論
monry
PRO
0
830
unity1week でチーム開発を成功させる秘訣
monry
PRO
0
310
Unity で ARゲームを作った話
monry
PRO
1
1k
Visual Programming Framework UniFlow のご紹介/Introducing UniFlow
monry
PRO
2
3.2k
UniFlow 完全に理解した / I can develop UniFlow a little.
monry
PRO
0
550
Democratized Unity Package Manager
monry
PRO
1
3k
使ってみよう! Unity RemoteSettings/Let's use Unity RemoteSettings
monry
PRO
1
1.3k
Other Decks in Programming
See All in Programming
Agentic UI
manfredsteyer
PRO
0
120
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
520
Lemonade + Foundry Toolkit でお手軽アプリ開発
seosoft
1
320
Claspは野良GASの夢をみるか
takter00
0
180
PHPで使える日時の表現と、その知り方 #frontend_phpcon_do
o0h
PRO
0
230
3Dシーンの圧縮
fadis
1
680
LLM Plugin for Node-REDの利用方法と開発について
404background
0
170
Make SRE Operations Easier with Azure SRE Agent
kkamegawa
0
5k
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
3
1.2k
Swiftのレキシカルスコープ管理
kntkymt
0
220
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
8
3.2k
Contextとはなにか
chiroruxx
0
220
Featured
See All Featured
30 Presentation Tips
portentint
PRO
1
320
Context Engineering - Making Every Token Count
addyosmani
9
950
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
570
The Illustrated Children's Guide to Kubernetes
chrisshort
51
52k
The SEO identity crisis: Don't let AI make you average
varn
0
480
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
200
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
56k
Technical Leadership for Architectural Decision Making
baasie
3
400
The untapped power of vector embeddings
frankvandijk
2
1.7k
How GitHub (no longer) Works
holman
316
150k
It's Worth the Effort
3n
188
29k
Claude Code のすすめ
schroneko
67
230k
Transcript
1PTU1SPDFTT#VJME ͷ͓ͳ͠ ʙ"TTFU1PTUQSPDFTTPSΛఴ͑ͯʙ גࣜձࣾΩοζελʔ 4ZTUFN%FWFMPQNFOU5FBN-FBEFS ɹ࠸ ୈճ6OJUZ։ൃٕज़ษڧձ
͜ΜΜʂ w lΜΓ͌zͰ͢ʂ w )BQQZ7BMFOUJOFT%BZ w Χόϯʹएׯͷ༨༟͕͍͟͝·͢ͷͰɺ ઈࢍνϣίϨʔτडதͰ͢Αʙ— w ʜʜʜɻ
w ͍ɺͯ͜ͱͰɺࠓ1PTU1SPDFTT#VJMEͷΛ͠ ʹདྷ·ͨ͠
ͱɺͦͷલʹʜɻ
XIPBNJ w lɹ࠸zͱਃ͠·͢ɻ w BLBΜΓ͌5!NPOSZ'NPOSZ w ࡀˁ0ܕఱṝ࠲طࠗ w झຯʮ͓ञʯͱʮ߹এʯͰ͢ɻ
XIPBNJ w lגࣜձࣾΩοζελʔzͬͯձࣾͰಇ͍ͯ·͢ɻ w ະबֶࣇʙখֶੜͷ͓ࢠ͞·Λ͓࣋ͪͷ ϑΝϛϦʔΛλʔήοτʹͨ͠ɺҭڭҭʹ ؔΘΔΞϓϦɾαʔϏεΛల։͓ͯ͠Γ·͢ɻ ͷ͑΄Μؗ ͳΓ͖Γ ͬ͜͝ϥϯυ
ύζϧςΠϧζ ͓͔͠ͷ͘ʹΛ ͭ͘Δͷ͡Ό ͳΓ͖Γ ΞΠεΫϦʔϜ ͞Μͬ͜͝ ͳΓ͖Γ ϚϚͬ͜͝ ͓หΛͭ͘Ζ͏ʂ ͑͜΄Μ
Ε͡ΎΊ w 1PTU1SPDFTT#VJME֓ཁ w 1PTU1SPDFTT#VJMEৄࡉ w ͓·͚
·͓͖͑ w 6OJUZ w WFSTJPOG w J04ͷ888 Ϋϥεʹόά͋Γʁ w 1SP-JDFOTF
w 1SP͡Όͳͯ͘ େৎ͔ʁ w #VJME1MBUGPSN w J04 w "OESPJE w %FWFMPQNFOU1MBUGPSN w 049.BSWFSJDLT w 8JOEPXT w ඇαϙʔτػೳΞϦ
1PTU1SPDFTT#VJMEͷ֓ཁ
1PTU1SPDFTT#VJME֓ཁ w ࣮ػ༻ʹϏϧυ͢Δࡍͷ ׂΓࠐΈॲཧ w େ·͔ʹ͚ͯೋछྨͷ ॻ͖ํ͕Ͱ͖Δ w γΣϧεΫϦϓτ w
6OJUZεΫϦϓτ
1PTU1SPDFTT#VJME֓ཁ w ॲཧΠϝʔδ
1PTU1SPDFTT#VJMEͷৄࡉ
ར༻༻్ w ϏϧυޙʹखಈͰΠδΠδ͢Δඞཁͷ͋ΔॲཧΛ ࣗಈԽ w දࣔΞϓϦ໊ͷઃఆ w J04 KBcFO MQSPK*OGPQMJTUTUSJOHT
w "OESPJESFTWBMVFT KB TUSJOHTYNM w 63-4DIFNFTͷઃఆ
ར༻༻్ w "3$Λ͍ͬͯΔ/BUJWF1MVHJOʹGPCKDBSDΛ༩ w "OESPJE.BOpFTUYNMͷՃ w BEWFSUJTJOH*EFOUJpFS *%'" ͷରԠ w
6OJUZͷ࣍όʔδϣϯΞοϓσʔτͰ ΔΒ͍͚͠Ͳɻ w ԿΕʹͯ͠ɺYDPEFQSPKͱ͔"OESPJE.BOJGFTUʹ ͍ͭͯɺ͋ΔఔࣝΛཁ͢Δ
γΣϧεΫϦϓτͷ߹ w ઌͣ6OJUZ.BOVBMಡΈ·͠ΐ͏ w େલఏͱͯ͠ɺ.BD൛ͷΈαϙʔτ w "TTFUT&EJUPS1PTUQSPDFTT#VJME1MBZFS w ֦ுࢠແ͠ w
࣮ߦݖݶ༩
γΣϧεΫϦϓτͷ߹ w TIFCBOHతʹύε͕௨ͬͯΕݴޠෆ w YDPEFQSPKͱ͔Λ࿔ΔͷͰ͋Ε 3VCZ͕Φψψϝ͔ͳʁ w $PDPB1PETͷYDPEFQSPKͳHFN͕ศར w YDPEFQSPKͱ͔"OESPJE.BOJGFTUͱ͔ͷ
ΈΛ͋Δఔख़͍ͯ͠ͳ͍ͱϋϚΔ
γΣϧεΫϦϓτͷ߹ w ࣮ߦ࣌ͷҾ ग़ྗઌͷϑϧύε #VJME1MBUGPSNछผ w J04lJ1IPOFz w
"OESPJElBOESPJEz ࠷దԽछผ 4USJQQJOH-FWFMʁ ձ໊ࣾ ϓϩμΫτ໊ ը໘ԣ෯ ը໘ॎ෯
γΣϧεΫϦϓτͷ߹ w ҙ w ʮͦ͏ɺ.BDͳΒͶɻʯ w ޙड़ͷ<1PTU1SPDFTT#VJME / >ଐੑΑΓઌʹ࣮ߦ͞ΕΔ w
·͊ɺιϨࣗମ͡Όແ͍Μ͕ͩɺ3VCZ(FNTͷYDPEFQSPKͱɺޙड़ ͷ9DPEF&EJUPSGPS6OJUZΛซ༻͢ΔͱϋϚΔ w ͬͯͷɺ9DPEF&EJUPSGPS6OJUZ"4$**'PSNBUQMJTU͔͠ಡΈॻ͖Ͱ ͖ͳ͍ͷ͕ͩɺ3VCZ(FNTͷYDPEFQSPK9.-'PSNBUQMJTUͱͯ͠ॻ͖ ग़ͯ͠͠·͏ͷͰɺ<1PTU1SPDFTT#VJME / >ଆͰΤϥʔΛͿ͍ͬͯ͘͜ΕΔ w 'BDFCPPL4%,GPS6OJUZΛ͏߹ɺ<1PTU1SPDFTT#VJME / >ͷॲཧͰ 9DPEF&EJUPSGPS6OJUZΛ༻͍͍ͯΔͷͰɺ࣮֬ʹ্هͷʹϒνͨΔ
6OJUZεΫϦϓτͷ߹ w ઌͣ6OJUZ.BOVBMಡΈ·͠ΐ͏ w 6OJUZ͔Βར༻Մೳʹͳͬͨ Β͍͠ w .BD8JOEPXTͲͪΒͰ w
"TTFUT &EJUPS DTcKT w 6OJUZతʹ&EJUPS4DSJQUͰ͋Δͱೝࣝग़དྷΔ ύεͳΒ0,ͬͯίτ
6OJUZεΫϦϓτͷ߹ w /&5ʹग़དྷΔίτͳΒԿͰ͟͝Ε w ͪΖΜ6OJUZͱͯ͠ͷػೳ͑ΔͷͰɺ 3FTPVSDFT-PBE ͱ͔͑ͨΓ͢Δ w ϙΠϯτೋͭ w
&EJUPSσΟϨΫτϦҎԼʹஔ͢Δ w QVCMJDTUBUJDͳϝιουʹ<1PTU1SPDFTT#VJME / > Λଐੑઃఆ͢Δ /࣮ߦॱং
6OJUZεΫϦϓτͷ߹ w ͜Μͳײ͡ɻ public static class PostProcessBuild { [PostProcessBuild(100)] public
static void OnPostProcessBuild(BuildTarget target, string path) { if (target == BuildTarget.iPhone) { Debug.Log("iOS: " + path); } if (target == BuildTarget.Android) { // ී௨ʹ Build ͨ͠߹ apk ͷঢ়ଶͰ͞ΕΔͷͰɺ੍ޚ͢Δ if (!Regex.IsMatch(path, "\\.apk$")) { Debug.Log("Android: " + path); } } } }
6OJUZεΫϦϓτͷ߹ w YDPEFQSPKΛ࿔Δ߹9DPEF&EJUPSGPS 6OJUZΛ͏ͱศརʂ w ࡞ऀͷ%BOJFMF$BSJPMB͞Μʹײँʂ w 9DPEFͰແ͘ಈ࡞͢ΔίτΛ֬ೝࡁ w "OESPJE.BOJGFTU࿔ΔϥΠϒϥϦͱ͔ݟ͔
Βͳ͔͚ͬͨͲɺී௨ʹ9.-࿔Ε0,
6OJUZεΫϦϓτͷ߹ w ҙ w "OESPJEͷ߹ɺ(PPHMF"OESPJE1SPKFDU ͱͯ͠&YQPSU͠ͳ͍ͱBQLʹରͯ͠ॲཧ͢ ΔίτʹͳͬͪΌ͏͔ΒΞτ w γΣϧεΫϦϓτͱҧͬͯɺ࣮ߦ࣌ʹ Τϥʔ͍ͨ͜߹Ϗϧυࣗମ͕ࢭ·Δ
ϝϦοτσϝϦοτ γΣϧεΫϦϓτ w ϝϦοτ w ׳ΕͨݴޠͰॻ͚Δ w ࣮࣌ͷ֬ೝָ͕ w Ҿ፻ͯ͠ΩοΫ
͢Ε0, w ݴޠʹґͬͯϥΠϒ ϥϦ͕๛ w σϝϦοτ w 6OJUZͷػೳ͕͑ͳ ͍ w ϩάग़͠ਏ͍ w Τϥʔ͕ى͖ͯͯؾ ͖ʹ͍͘ w 8JOEPXTΦϫίϯ
ϝϦοτσϝϦοτ 6OJUZεΫϦϓτ w ϝϦοτ w 6OJUZͷػೳ͑Δ w ૭Ͱಈ͘ w ؤுΕϓϩδΣΫτ
ґଘͳΛͰ͖Δ w 4DSJQUBCMF0CKFDU ͱ͔͑Ͷɻ w σϝϦοτ w Τϥʔى͖Δͱࢭ·Δ w ֬ೝ͕ϝϯυ͍ w ຖճϏϧυ͠ͳ͍ͱ ͩΊΆ
·ͱΊ w ݸਓతʹ6OJUZεΫϦϓτ͕ΦεεϝͰ͢ w ॲཧॱΛఆٛग़དྷΔ͔ΒࡉԽͰ͖Δ͠ w ฐࣾతʹɺ͜Εͷ͓ӄͰϏϧυޙʹखಈͰઃఆ͢Δίτ ຆͲ͋Γ·ͤΜ w །Ұɺ1SPWJTJPOJOH1SPpMFͷઃఆ͚ͩ͢Δ͚ͲͶɻ
w ૬ຊؾग़ͤ+FOLJOT͓͡͞Μͱྑ͘͢ΔͳͲͰɺ lϏϧυzˠl"1,*1"ΞʔΧΠϒzˠl5FTU'MJHIUΞοϓz ͱ͔ΛશࣗಈԽͰ͖Δ͔
͓·͚
"TTFU1PTUQSPDFTTPS w 1PTU1SPDFTTܥͷωλͱͯ͠0OFNPSFUIJOH w ϞόΠϧ͚ʹϏϧυ͢ΔʹͨͬͯɺςΫενϟͷѹॖܗ ࣜʹ͍ͭͯҙΛ͏ඞཁ͕͋Γ·͢ w ΜΓ͌ͷΦεεϝҎԼͷ௨Γ w J043(#"$PNQSFTTFE1735$CJUT
w "OESPJE3(#"$PNQSFTTFE"5$CJUT w ৄͪ͘͜͠ΒͷεϥΠυΛ͝ࢀর͍ͩ͘͞ εςϚ
"TTFU1PTUQSPDFTTPS w Ͱɺʮ͜ͷઃఆΛຖճΔͷ b"A ŵƃŪƄŞŤʯͳو ํʹ࿕ใͰ͢ʂ w ͳΜͱɺ֤छ"TTFUΛ*NQPSU͢Δͱ͖ʹॲ ཧΛϑοΫͰ͖ͪΌ͏ͷͰ͢ʂ w
5FYUVSF͚ͩʹݶΒͣɺ"VEJPΒ.PEFMΒ ͷl"TTFUzͳϞϊͰ͋ΕԿͰ͟͝Ε
"TTFU1PTUQSPDFTTPS w ઌͣ6OJUZ.BOVBMΛʜ SZ w ϙΠϯτҎԼͷ௨Γ w &EJUPSσΟϨΫτϦҎԼʹஔ w 6OJUZ&EJUPS"TTFU1PTUQSPDFTTPSΛܧঝ
w 0O 1SFc1PTU QSPDFTT "VEJPc.PEFMc5FYUVSF ϝιου Λ࣮ ଞʹز͔ͭ͋Δ͚ͲͶ w .FTTBHJOHͷػೳʹΑΓݺͼग़͞ΕΔ
"TTFU1PTUQSPDFTTPS w ฐࣾͰҎԼͷΑ͏ͳίτΛͬͯ·͢ w جຊతʹ*NQPSU4FUUJOHTΛ্ॻ͖ w ֦ுࢠ͕SBXQOHͳϑΝΠϧૉ௨Γ w ϓϥοτϑΥʔϜผઃఆΛݸผʹࢦఆ͍ͨ͠έʔ εΛఆͯ͠ɺطʹ0WFSXSJUFGPSʹνΣο
Ϋ͕͍͍ͯΔ߹ɺ্ॻ͖͠ͳ͍
·ͱΊ w 6OJUZʹ 1SFc1PTU )PHF'VHBͳϑοΫॲཧ ͕Γͩ͘͞Μʂ w &EJUPS4DSJQUΛ͍͜ͳ͢ͱ։ൃޮΊͬͪΌ ͕͋ΔΑʂʂ w
6OJUZ.BOVBMख़ಡͯ͠ɺଘʹ͍ͪ͠Ό͍ ·͠ΐ͏ʂʂʂ
ࢹௌऀϓϨθϯτ
ίί·Ͱ͓͖߹͍͍ͨ وํଃΔ͔͞͞ͳϓϨθϯτ w ͯ͜ͱͰɺฐࣾͰ͍ͬͯΔ "TTFU1PTUQSPDFTTPS ΛҰ෦Ճͨ͠Ϟϊ Λ ͪ͜Βʹஔ͍͓͖ͯ·ͨ͠ w Α͠ͳʹՃ͍ͯͬͯͩ͘͠͞ͳ
w ͋ɺϊʔΫϨʔϜɾϊʔϦλʔϯͰśūŢŒţ
"OZ2VFTUJPOT
5IBOLZPVGPS ZPVSBUUFOUJPO