Umanyano liqonga esele likhona ixesha elide kwaye lihlala livela. Nangona kunjalo, xa usebenza kuyo kunye neeprojekthi ezininzi ngexesha elinye, usenokufumana ubunzima ekusebenziseni imithombo eqhelekileyo (.cs), amathala eencwadi (.dll) kunye nezinye izinto (imifanekiso, izandi, iimodeli, iiprefabs). Kweli nqaku siza kuthetha ngamava ethu ngesisombululo semveli kwingxaki enjalo yoManyano.
Iindlela zoSabelo lweZibonelelo ekwabelwana ngazo
Kukho ngaphezu kwendlela enye yokusebenzisa izixhobo ekwabelwana ngazo kwiiprojekthi ezahlukeneyo, kodwa indlela nganye ineenzuzo kunye nezibi.
1. Ukuphindaphinda - siphinda izixhobo phakathi kweeprojekthi "ngesandla."
Iinkonzo:
- Ifanele zonke iintlobo zezibonelelo.
- Akukho zingxaki zokuxhomekeka.
- Akukho ngxaki ngee-asethi GUIDs.
Umgcini:
- Oovimba abakhulu.
- Akukho nokwenzeka kuguqulelo.
- Ubunzima bokulandelela utshintsho kwizixhobo ekwabelwana ngazo.
- Ubunzima bokuhlaziya izixhobo ekwabelwana ngazo.
2.
Iinkonzo:
- Ungasebenza kunye nemithombo.
- Unokusasaza ii-asethi.
- Akukho zingxaki zokuxhomekeka.
Umgcini:
- Amava eGit ayafuneka.
- I-Git ayinabuhlobo kakhulu kunye neefayile zokubini - kuya kufuneka udibanise iLFS.
- Ulawulo lokufikelela kwiindawo zokugcina.
- Ubunzima bokuphucula kunye nokwehlisa iinguqulelo.
- Ungquzulwano lwe-GUID lunokwenzeka kwaye akukho kuziphatha kucacileyo kwicala loManyano lokuzisombulula.
3. I-NuGet - ukusasazwa kwamathala eencwadi ekwabelwana ngawo ngeepakethe zeNuGet.
Iinkonzo:
- Ukusebenza ngokulula kunye neeprojekthi ezingaxhomekekanga kuManyano.
- Uguqulelo olulula kunye nesisombululo sokuxhomekeka.
Umgcini:
- Umanyano alukwazi ukusebenza kunye neepakethe ze-NuGet ngaphandle kwebhokisi (kwi-GitHub ungafumana uMphathi wePhakeji ye-NuGet yoManyano, elungisa oku, kodwa kukho ama-nuances athile).
- Ubunzima ekusasazeni ezinye iintlobo ze-asethi.
4. Umphathi wePakeji yoBumbano - ukuhanjiswa kwezibonelelo ekwabelwana ngazo ngesisombululo sasekhaya soBumbano.
Iinkonzo:
- Ujongano lwendalo lokusebenza ngeepakethi.
- Ukukhuselwa ngokuchasene nokubhala ngaphezulu kweefayile zemeta kwiipakethe ngenxa yeengxabano ze-GUID.
- Ukubakho koguqulelo.
- Ukukwazi ukusasaza zonke iintlobo zemithombo yoBumbano.
Umgcini:
- Iingxabano ze-GUID zisengenzeka.
- Akukho maxwebhu okuphunyezwa.
Le ndlela yokugqibela ineengenelo ezininzi kunezingeloncedo. Nangona kunjalo, ayithandwa kakhulu ngoku ngenxa yokungabikho kwamaxwebhu, kwaye ngoko siya kuhlala kuyo ngokubanzi.
Umphathi wePakeji yoManyano
Umphathi wePakethe yoBumbano (UPM) sisixhobo sokulawula iphakheji. Yongezwa kwi-Unity 2018.1 kwaye yayisetyenziselwa kuphela iipakethi eziphuhliswe yi-Unity Technologies. Nangona kunjalo, ukuqala ngenguqulo 2018.3, kuye kwenzeka ukuba ungeze iipakethi zesiko.
Ujongano loMphathi wePakethi yoManyano
Iipakethe azipheli kwimithombo yeprojekthi (i-Assets directory). Bakuluhlu olwahlukileyo %projectFolder%/Library/PackageCache
kwaye ayichaphazeli iprojekthi nangayiphi na indlela, ukukhankanywa kwabo kuphela kwikhowudi yomthombo kwifayile packages/manifest.json
.
Iipakethi kwinkqubo yefayile yeprojekthi
Imithombo yepakethi
I-UPM inokusebenzisa imithombo yempahla emininzi:
1. Inkqubo yefayile.
Iinkonzo:
- Isantya sophumezo.
- Ayifuni izixhobo zomntu wesithathu.
Umgcini:
- Ubunzima kuguqulelo.
- Ukufikelela okwabelwanayo kwisixokelelwano sefayile kuyafuneka kuye wonke umntu osebenza neprojekthi.
2. Uvimba weGit.
Iinkonzo:
- Ekuphela kwento oyifunayo yindawo yokugcina iGit.
Umgcini:
- Awukwazi ukutshintsha phakathi kweenguqulelo ngefestile ye-UPM.
- Ayisebenzi nazo zonke iindawo zokugcina zeGit.
3. indawo yokugcina ye-npm.
Iinkonzo:
- Ixhasa ngokupheleleyo ukusebenza kwe-UPM kwaye isetyenziselwa ukuhambisa iipakethe ezisemthethweni ze-Unity.
Umgcini:
- Okwangoku ayihoyi zonke iinguqulelo zeepakethe ngaphandle kwe-"-preview".
Ngezantsi siza kujonga ukuphunyezwa kwe-UPM + npm. Lo mthwalo ufanelekile kuba uvumela ukuba usebenze nalo naluphi na uhlobo lomthombo kwaye ulawule iinguqulelo zephakheji, kwaye ikwaxhasa ngokupheleleyo ujongano lwendalo lwe-UPM.
Ungayisebenzisa njengendawo yokugcina ye-npm
Ukumisela okusingqongileyo
Okokuqala kufuneka ufake
Ukwenza ipakethe
Ukwenza ipakethe, kufuneka ubeke ifayile package.json
, eya kuyichaza, kulawulo olunemixholo yale mpahla. Kufuneka wenze oku kulandelayo:
Yiya kuluhlu lweprojekthi esifuna ukwenza ipakethe.
Qhuba umyalelo we-npm init kwaye ungenise amaxabiso afunekayo ngexesha lencoko yababini. Ngegama, khankanya igama kwifomathi yesizinda esibuyela umva, umzekelo com.plarium.somepackage.
Ukubonisa ngokulula igama lepakethe, yongeza ipropathi yeDisplayName kwipakethe.json kwaye uyigcwalise.
Ekubeni i-npm i-js-oriented, ifayile iqulethe izinto eziphambili kunye nezikripthi esingazifuniyo, ezo Ubumbano olungasebenzisiyo. Kungcono ukuwasusa ukuze ungafaki inkcazo yephakheji. Ifayile kufuneka ijonge ngolu hlobo:
- Yiya kuluhlu lweprojekthi esifuna ukwenza ipakethe.
- Qhuba umyalelo we-npm init kwaye ungenise amaxabiso afunekayo ngexesha lencoko yababini. Ngegama, khankanya igama kwifomathi yesizinda esibuyela umva, umzekelo com.plarium.somepackage.
- Ukubonisa ngokulula igama lepakethe, yongeza ipropathi yeDisplayName kwipakethe.json kwaye uyigcwalise.
- Ekubeni i-npm i-js-oriented, ifayile iqulethe izinto eziphambili kunye nezikripthi esingazifuniyo, ezo Ubumbano olungasebenzisiyo. Kungcono ukuwasusa ukuze ungafaki inkcazo yephakheji. Ifayile kufuneka ijonge ngolu hlobo:
{ "name": "com.plarium.somepackage", "displayName": "Some Package", "version": "1.0.0", "description": "Some Package Description", "keywords": [ "Unity", "UPM" ], "author": "AUTHOR", "license": "UNLICENSED" }
- Vula Ubumbano kwaye uvelise ifayile ye-.meta ye-package.json (Umanyano aluboni i-asethi ngaphandle kweefayile ze-.meta, iipakethe ze-Unity zivulwa ukufunda-kuphela).
Ukuthumela ipakethe
Ukuthumela ipakethe kufuneka usebenzise umyalelo: npm publish --registry *Π°Π΄ΡΠ΅Ρ Π΄ΠΎ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° ΠΏΠ°ΠΊΠ΅ΡΠΎΠ²*
.
Ukufaka kunye nokuhlaziya iipakethe ngokusebenzisa uMphathi wePakeji yoBumbano
Ukongeza iphakheji kwiprojekthi yoBumbano, kufuneka:
- Yongeza kwifayile
manifest.json
ulwazi malunga nomthombo weepakethe. Ukwenza oku kufuneka udibanise ipropatiscopedRegistries
kwaye ubonise imida kunye nedilesi yomthombo apho imida ethile iya kukhangelwa."scopedRegistries": [ { "name": "Main", "url": "Π°Π΄ΡΠ΅Ρ Π΄ΠΎ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° ΠΏΠ°ΠΊΠ΅ΡΠΎΠ²", "scopes": [ "com.plarium" ] } ]
- Yiya kuManyano kwaye uvule iwindow yoMphathi wePackage (ukusebenza kunye neepakethe zesiko akufani nokusebenza kunye nezakhelwe ngaphakathi).
- Khetha Zonke iipakethi.
- Fumana iphakheji oyifunayo kwaye uyongeze.
Ukusebenza ngemithombo kunye nokulungiswa kweempazamo
Ukuze imithombo iqhagamshelwe kwiprojekthi, kufuneka udale
Ukusebenzisa iipakethe akuthinteli ukhetho lwakho lolungiso. Nangona kunjalo, xa usebenza kunye neepakethe kwi-Unity, awukwazi ukuya kwi-IDE ngokunqakraza kwimpazamo kwi-console ukuba impazamo yenzekile kwiphakheji. Oku kubangelwa ukuba i-Unity ayiboni izikripthi njengeefayile ezihlukeneyo, ekubeni xa usebenzisa iNgcaciso yeNdibano ziqokelelwa kwilayibrari kwaye zifakwe kwiprojekthi. Xa usebenza ngemithombo evela kwiprojekthi, ukucofa kwi-IDE iyafumaneka.
Ushicilelo kwiprojekthi enephakheji eqhagamshelweyo:
Ushicilelo olusuka kwiphakheji enendawo yoqhawulo yokusebenza:
Ulungiso olungxamisekileyo kwiipakethe
Iipakethe zomanyano ezongezwe kwiprojekthi zifundwa kuphela, kodwa zinokuhlelwa kwi-cache yephakheji. Ukwenza oku kufuneka:
- Yiya kwiphakheji kwi-cache yephakheji.
- Yenza utshintsho oluyimfuneko.
- Hlaziya inguqulelo kwifayile
package.json
. - Thumela ipakethe
npm publish --registry *Π°Π΄ΡΠ΅Ρ Π΄ΠΎ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° ΠΏΠ°ΠΊΠ΅ΡΠΎΠ²*
. - Hlaziya uguqulelo lwepakethe ukuya kwelungisiweyo ngokusebenzisa ujongano lwe-UPM.
Ungquzulwano lwepakethi yokungenisa
Olu ngquzulwano lulandelayo lwe-GUID lunokwenzeka xa kuthathwa ngaphandle imipakethe:
- Iphakheji - iphakheji. Ukuba, xa ungenisa ipakethe, kufunyaniswa ukuba iipakethe esele zongeziwe ziqulethe ii-asethi ezine-GUID efanayo, ii-asethi ezinee-GUID ezithelekisekayo ezivela kwiphakheji engeniswe ngaphandle aziyi kongezwa kwiprojekthi.
- Iphakheji yiprojekthi. Ukuba, xa ungenisa iphakheji, kufunyaniswa ukuba iprojekthi iqulethe i-asethi ene-GUIDs ehambelanayo, ngoko ke ii-asethi ezivela kwiphakheji aziyi kongezwa kwiprojekthi. Nangona kunjalo, ii-asethi ezixhomekeke kuzo ziya kuqalisa ukusebenzisa ii-asethi ezivela kwiprojekthi.
Ukuhanjiswa kwempahla ukusuka kwiprojekthi ukuya kwiphakheji
Ukuba udlulisela i-asethi ukusuka kwiprojekthi ukuya kwiphakheji ngelixa i-Unity ivuliwe, ukusebenza kwayo kuya kugcinwa, kwaye izixhumanisi kwii-asethi ezixhomekeke ziya kuqala ukusebenzisa i-asethi evela kwiphakheji.
ebalulekileyo: Xa ukopisha i-asethi ukusuka kwiprojekthi ukuya kwiphakheji, ingxabano "yePhakheji - iProjekthi" echazwe kwicandelo elingasentla iya kwenzeka.
Izisombululo ezinokubakho kwiingxabano
- Ukwabela ngokutsha ii-GUIDs kusetyenziswa ezethu iindlela xa singenisa yonke impahla ukuphelisa ukungqubana.
- Ukongeza zonke ii-asethi kwiprojekthi enye kwaye uzahlule kwiipakethi.
- Ukudala i-database equlethe ii-GUID zazo zonke ii-asethi kunye nokuqhuba ukuqinisekiswa xa kuthunyelwa iipakethe.
isiphelo
I-UPM isisombululo esitsha sokusasaza izibonelelo ezikwabelwana ngazo kwi-Unity, enokuba yinto efanelekileyo kwiindlela ezikhoyo. Iingcebiso ezichazwe kwinqaku zazisekelwe kwiimeko zangempela. Siyathemba ukuba uzifumana ziluncedo.
umthombo: www.habr.com