Posted by
hanga gonga94.com
on
- Get link
- X
- Other Apps
Kufanya mchezo unaofanya kazi kikamilifu kwa Android ni rahisi sana kuliko vile unavyofikiria. Ufunguo wa maendeleo ya mafanikio ya Android-- au aina yoyote ya maendeleo- ni kujua unachotaka kufikia na kupata vifaa na ujuzi unaofaa kuifanya. Chukua njia ya upinzani mdogo na uwe na lengo wazi katika akili.
Linapokuja suala la kuunda michezo, zana bora kwa maoni yangu ni Umoja. Ndio, unaweza kufanya mchezo katika Studio ya Android, lakini isipokuwa umezoea na Java na SDK ya Android itakuwa pambano la juu. Utahitaji kuelewa ni nini madarasa hufanya. Utahitaji kutumia maoni maalum. Utakuwa ukitegemea maktaba zingine za ziada. Orodha inaendelea.
Umoja ni kifaa cha kitaalam sana ambacho kinapeana nguvu idadi kubwa ya majina makubwa ya kuuza kwenye Duka la Google Play.
Umoja kwa upande mwingine hufanya kazi nyingi kwako. Huu ni injini ya mchezo, ikiwa na maana kwamba fizikia yote na huduma nyingine nyingi unazotaka kutumia tayari zimeshughulikiwa. Ni jukwaa la msalaba na imeundwa kuwa ya kupendeza sana kwa wahuni na watengenezaji wa indie.
Wakati huo huo, Umoja ni kifaa cha kitaalam ambacho kinapeana nguvu idadi kubwa ya majina makubwa ya kuuza kwenye Duka la Google Play. Hakuna mapungufu hapa na hakuna sababu nzuri ya kufanya maisha iwe ngumu kwako mwenyewe. Ni bure pia!
Ili kuonyesha jinsi rahisi mchezo wa maendeleo na Umoja, nitakuonyesha jinsi ya kufanya mchezo wako wa kwanza wa Android katika dakika 7 tu.
Hapana - Sitakuelezea jinsi ya kufanya hivyo katika dakika 7. Nitafanya hivyo kwa dakika 7. Ukifuata pia, utaweza kufanya kitu sawa!
Kanusho : kabla ya kuanza, nataka kusema tu kwamba nina cheka kidogo. Wakati mchakato wa kutengeneza mchezo utachukua dakika 7, hiyo inadhani kuwa tayari umesakata umoja na upate kila kitu kusanidi. Lakini sitakuacha ukining'inia: unaweza kupata mafunzo kamili juu ya jinsi ya kufanya hivyo kwenye Mamlaka ya Android .
Anza kwa kubonyeza mara mbili Unity ili kuizindua. Hata safari ndefu zaidi huanza na hatua moja.
Sasa andika mradi mpya na hakikisha umechagua '2D'. Mara tu ukiingia, utasalimiwa na madirisha kadhaa tofauti. Hizi hufanya vitu. Hatuna wakati wa kuelezea, kwa hivyo fuata tu maagizo yangu na utaichukua wakati tunaenda.
Jambo la kwanza utataka kufanya ni kuunda sprite kuwa tabia yako. Njia rahisi ya kufanya hivyo ni kuteka mraba. Tutatoa macho kadhaa. Ikiwa unataka kuwa na kasi zaidi bado, unaweza tu kunyakua sprite unayopenda kutoka mahali fulani.
Okoa kijiko hiki na kisha tu burudishe na uitupe katika 'eneo' lako kwa kuiweka kwenye dirisha kubwa. Utagundua kuwa pia inajitokeza upande wa kushoto katika 'uongozi'.
Sasa tunataka kuunda majukwaa kadhaa. Tena, tutafanya kufanya na mraba rahisi na tutaweza kurekebisha ukubwa huu ili kutengeneza kuta, majukwaa na nini unayo.
Huko tunaenda, mrembo. Tupa kwa njia ile ile tu uliyoifanya.
Tayari tunayo kitu kinachoonekana kama "mchezo". Bonyeza kucheza na unapaswa kuona eneo tuli kwa sasa.
Tunaweza kubadilisha hiyo kwa kubonyeza kiunga cha mchezaji wetu na kuangalia upande wa kulia wa dirisha inayoitwa 'mhakiki'. Hapa ndipo tunapobadilisha mali ya vitu vya Mchezo wetu.
Chagua 'Ongeza Sehemu' kisha uchague 'Fizikia 2D> RigidBody2D'. Unaongeza fizikia tu kwa mchezaji wako! Hii itakuwa ngumu sana kwetu kufanya sisi wenyewe na kwa kweli inaonyesha umuhimu wa Umoja.
Tunataka pia kurekebisha mwelekeo wetu kuzuia tabia inazunguka na kufungia pande zote. Pata 'vikwazo' katika mhakiki na mchezaji aliyechaguliwa na Jibu sanduku ili kufungia mzunguko wa Z. Sasa bonyeza play tena na unapaswa kupata kicheza mchezaji wako sasa kutoka angani kwenda kwenye adhabu yake isiyo na mwisho.
Chukua muda kutafakari jinsi hii ilivyokuwa rahisi: tu kwa kutumia hati hii inayoitwa 'RigidBody2D' tuna fizikia inayofanya kazi kikamilifu. Ikiwa tungetumia kutumia maandishi yaleyale kwa sura ya pande zote, ingekuwa na kusonga na hata kupiga. Fikiria kufikiria mwenyewe na jinsi hiyo ingehusika!
Ili kuacha tabia yetu inayoanguka kupitia sakafu, utahitaji kuongeza kishirika. Hii kimsingi ni muhtasari thabiti wa sura. Ili kutumia hiyo, chagua mchezaji wako, bonyeza 'Ongeza Sehemu' na wakati huu uchague 'Fizikia 2D> BoxCollider2D'.
Chukua muda kutafakari jinsi hii ilivyokuwa rahisi: tu kwa kutumia hati hii inayoitwa 'RigidBody2D' tuna fizikia inayofanya kazi kikamilifu.
Fanya kitu sawa na jukwaa, bonyeza kucheza na kisha tabia yako inapaswa kushuka kwenye msingi thabiti. Rahisi!
Jambo moja zaidi: kuhakikisha kwamba kamera inamfuata mchezaji wetu ikiwa anaanguka au anasonga, tunataka kuvuta kitu cha kamera ambacho kiko kwenye eneo la tukio (hii iliundwa wakati ulianza mradi mpya) juu ya kicheza. Sasa katika uongozi (orodha ya vitu vya Game upande wa kushoto) utaenda kuvuta kamera ili iweze kushonwa chini ya mchezaji. Kamera sasa ni 'mtoto' wa MchezoObject ya Player, ikimaanisha kuwa wakati mchezaji anapoenda, ndivyo pia kamera itakavyokuwa.
Tutafanya mkimbiaji wa msingi usio na kipimo na hiyo inamaanisha mhusika wetu anapaswa kwenda moja kwa moja kwenye skrini hadi watakapopata kizuizi. Kwa hiyo, tunahitaji hati. Kwa hivyo bonyeza kulia kwenye folda ya Mali chini na uunda folda mpya inayoitwa 'Nakala'. Sasa bonyeza mara moja tena na uchague 'Unda> C #cript'. Iite 'PlayerControls'.
Kwa sehemu kubwa maandishi tunayounda yatafafanua tabia maalum kwa vitu vya Mchezo wetu.
Sasa bonyeza mara mbili kwenye hati yako mpya na itafunguliwa kwenye Studio ya Visual ikiwa unaweka kila kitu kwa usahihi.
Tayari kuna msimbo hapa, ambayo ni 'boiler sahani code'. Hiyo inamaanisha kwamba ni msimbo ambao utahitaji kutumia karibu kila hati, kwa hivyo imejaa watu kwako ili kuokoa muda. Sasa tutaongeza kitu kipya na mstari huu juu ya Anza batili ():
rigidbody2D rb ya umma ;
Kisha weka safu hii inayofuata ya nambari ya njia ya Anza () ya kupata mtu mgumu. Hii kimsingi inamwambia Unity Machapisho fizikia iliyowekwa kwenye GameObject kwamba hati hii itahusishwa na (mchezaji wetu bila shaka). Anza () ni njia ambayo inatekelezwa mara tu kitu kipya au maandishi kimeundwa. Machapisho kitu cha fizikia:
rb = GetComponent < Rigidbody2D > ();
Ongeza Sasisho hili la ndani ():
rb.velocity = Vector2 mpya ( 3 , rb.velocity.y);
Sasisha () inaburudisha tena na kwa hivyo nambari yoyote hapa inakwenda tena na tena hadi kitu kiharibike. Hii yote inasema kwamba tunataka mtu wetu mgumu kuwa na vector mpya na kasi sawa kwenye mhimili wa y (rb.velocity.y) lakini kwa kasi ya '3' kwenye mhimili wa usawa. Unapoendelea, labda utatumia 'FixedUpdate ()' katika siku zijazo.
Hifadhi hiyo na urudi kwenye Umoja. Bonyeza mhusika wako na kisha kwenye mkaguzi chagua Ongeza Sehemu> Maandishi na kisha hati yako mpya. Bonyeza kucheza, na usonge! Tabia yako inapaswa sasa kuelekea ukingo wa kingo kama lemming.
Kumbuka: Ikiwa yoyote ya hii inasikika kama ya kutatanisha, angalia video tu kuona yote yakifanywa - itasaidia!
Ikiwa tunataka kuongeza kipengee cha kuruka, tunaweza kufanya hivi kwa nambari moja tu ya ziada:
ikiwa (Ingizo.GetMouseButtonDown ( 0 )) {
rb.velocity = Vector2 mpya (rb.velocity.x, 5 );
}
Hii inaingia ndani ya Mbinu ya Kusasisha na inasema kwamba 'ikiwa mchezaji atabonyeza' kisha ongeza kasi kwenye mhimili wa y (pamoja na thamani ya 5). Tunapotumia ikiwa, kitu chochote kinachofuata ndani ya mabano hutumiwa kama aina ya mtihani wa kweli au wa uwongo. Ikiwa mantiki ya ndani imesema mabano ni kweli, basi nambari iliyo kwenye mabano ya curly ifuatayo yataenda. Katika kesi hii, ikiwa mchezaji atabonyeza panya, kasi inaongezwa.
Android inasoma kitufe cha kushoto cha panya kama kugonga popote kwenye skrini! Kwa hivyo sasa mchezo wako una udhibiti wa bomba la msingi.
Hii kimsingi ni ya kutosha kufanya ndege ya Flappy Flone. Tupa vizuizi kadhaa na ujifunze jinsi ya kuharibu mchezaji wakati unawagusa. Ongeza alama juu ya hiyo.
Ukikosa hii, hakuna changamoto itakuwa kubwa sana katika siku zijazo
Lakini tunayo muda kidogo zaidi ili tuweze kupata tamaa kubwa na kufanya mchezo wa aina ya mkimbiaji badala yake. Kitu kibaya na kile tunacho kwa sasa ni kwamba bomba la kuruka litaruka hata wakati mchezaji hajagusa sakafu, kwa kweli inaweza kuruka.
Kukumbuka hii kunakuwa ngumu zaidi lakini hii ni ngumu kama Unity inavyopata. Ukikosa hii, hakuna changamoto itakuwa kubwa sana katika siku zijazo.
Ongeza nambari ifuatayo kwenye hati yako hapo juu Mbinu ya Kusasisha ():
umma kubadilisha groundCheck;
StartPosition ya Kubadilisha ya umma ;
umma kuelea groundCheckRadius;
Tabaka la Umma la umma WhatIsGound;
bool ya kibinafsi kwenyeGound;
Ongeza mstari huu kwa Njia ya Sasisha juu ya taarifa ikiwa:
onGround = Fizikia2D.OverlapCircle (floorCheck.position, floorCheckRadius, whatIsGound);
Mwishowe, badilisha laini ifuatayo kuwa ni pamoja na && onGound:
ikiwa (Ingizo.GetMouseButtonDown ( 0 ) && onGround) {
Jambo lote linapaswa kuonekana kama hili:
PlayerControls za darasa la umma : MonoBehaviour
{
rigidbody2D rb ya umma ;
umma kubadilisha groundCheck;
StartPosition ya Kubadilisha ya umma ;
umma kuelea groundCheckRadius;
Tabaka la Umma la umma WhatIsGound;
bool ya kibinafsi kwenyeGound;
Anza batili () {
rb = GetComponent <Rigidbody2D> ();
}
Sasisha batili () {
rb.velocity = Vector2 mpya ( 3 , rb.velocity.y);
onGround = Fizikia2D.OverlapCircle (floorCheck.position, floorCheckRadius, whatIsGound);
ikiwa (Ingizo.GetMouseButtonDown ( 0 ) && onGround) {
rb.velocity = Vector2 mpya (rb.velocity.x, 5 );
}
}
}
Tunachofanya hapa ni kuunda mabadiliko mpya - msimamo katika nafasi - basi tunaweka radi yake na kuuliza ikiwa inaingiliana na safu inayoitwa ardhi. Kisha tunabadilisha thamani ya Boolean (ambayo inaweza kuwa ya kweli au ya uwongo) kulingana na kama hiyo ndio kesi au la.
Kwa hivyo, onGound ni kweli ikiwa mabadiliko yanayoitwa floorCheck yanaingiliana na safu ya safu.
Ikiwa bonyeza bonyeza halafu rudi kwenye Umoja, sasa unapaswa kuona kuwa una chaguzi zaidi zinazopatikana katika mhakiki wako unapochagua mchezaji. Anuwai hizi za umma zinaweza kuonekana kutoka kwa Umoja yenyewe na hiyo inamaanisha kwamba tunaweza kuziweka tunapenda.
Bonyeza kulia kwenye nafasi ya juu juu kushoto ili kuunda kitu kipya tupu na kisha kuivuta ili iwe chini ya kichezaji kwenye dirisha la Scene ambapo unataka kugundua sakafu. Badili jina la 'Angalia chini' kisha uifanye kuwa mtoto wa mchezaji kama vile ulivyofanya na kamera. Sasa inapaswa kufuata mchezaji, angalia sakafu chini kama inavyofanya.
Chagua mchezaji tena na, katika mhakiki, buruta kitu kipya cha Chagua kwenye nafasi ambamo inasema 'floorCheck'. 'Badilisha' (msimamo) sasa itakuwa sawa na msimamo wa kitu kipya. Unapokuwa hapa, ingiza 0.1 ambapo inasema radius.
Mwishowe, tunahitaji kufafanua safu yetu ya "ardhi". Ili kufanya hivyo, chagua eneo ulilounda mapema, kisha juu kulia juu ya mhakiki, pata mahali inasema 'Tabaka: Chaguo-msingi'. Bonyeza kisanduku hiki cha chini na uchague 'Ongeza Tabaka'.
Sasa bonyeza nyuma na wakati huu chagua 'ardhi' kama safu ya jukwaa lako (kurudia hii kwa majukwaa mengine yoyote ambayo umeyazunguka). Mwishowe, ambapo inasema 'Je! Ni nini chini' kwenye mchezaji wako, chagua safu ya ardhi pia.
Sasa unamwambia hati yako ya mchezaji kuangalia ikiwa hatua ndogo kwenye skrini inaingiliana na kitu chochote kinachofanana na safu hiyo. Shukrani kwa mstari huo ambao tumeongeza hapo awali, mhusika ataruka tu wakati hiyo ndio kesi.
Na kwa hiyo, ikiwa utapiga kucheza, unaweza kufurahia mchezo mzuri wa msingi unaokuhitaji bonyeza ili kuruka kwa wakati unaofaa.
Na hiyo, ikiwa utapiga kucheza unaweza kufurahiya mchezo mzuri wa kimsingi unaokuhitaji bonyeza ili kuruka kwa wakati unaofaa. Ikiwa utaweka Umoja wako vizuri na SDK ya Android, basi unapaswa kuwa na uwezo wa kujenga na kuendesha hii na kisha kucheza kwenye smartphone yako kwa kugonga skrini kuruka.
Ni wazi kuna mengi zaidi ya kuongeza kufanya hii mchezo kamili. Mchezaji anapaswa kuwa na uwezo wa kufa na kufuka. Tunataka kuongeza viwango vya ziada na zaidi.
Kusudi langu hapa lilikuwa kuonyesha jinsi haraka unaweza kupata kitu cha msingi na kuendeshwa. Kufuatia maagizo haya, unapaswa kuwa na uwezo wa kujenga mkimbiaji wako usio na wakati wowote kwa kuiruhusu Umoja uweze kushughulikia vitu ngumu, kama fizikia.
Ikiwa unajua kile unachotaka kujenga na kufanya utafiti wako, hauitaji kuwa mchawi wa utengenezaji ili kuunda mchezo mzuri!
Comments
Post a Comment