Orodha ya maudhui:

Kuweka Vitu vya AR kwenye Uratibu wa GPS katika Ukweli uliodhabitiwa: Hatua 8 (na Picha)
Kuweka Vitu vya AR kwenye Uratibu wa GPS katika Ukweli uliodhabitiwa: Hatua 8 (na Picha)

Video: Kuweka Vitu vya AR kwenye Uratibu wa GPS katika Ukweli uliodhabitiwa: Hatua 8 (na Picha)

Video: Kuweka Vitu vya AR kwenye Uratibu wa GPS katika Ukweli uliodhabitiwa: Hatua 8 (na Picha)
Video: JINSI YA KU TRUCK CM NA KUPATA SMS NA CALL ZOTE ZA MPENZI WAKO 2024, Julai
Anonim
Kuweka Vitu vya AR kwenye Uratibu wa GPS katika Ukweli uliodhabitiwa
Kuweka Vitu vya AR kwenye Uratibu wa GPS katika Ukweli uliodhabitiwa

Hii inaweza kufundishwa kutengeneza programu ya rununu ya kuweka vitu vya AR kwenye kuratibu za GPS na ARkit na ARCore kwa kutumia Unity3D. Nitakutembea kupitia usanidi wa mradi nilioufanya ukitumia Mapbox ambayo inatuwezesha kuweka lebo kwenye maeneo fulani ya GPS na kuyaandika kwenye hifadhidata ya GameSpark.

Programu na miradi yote tutakayotumia hapa ni bure.

Pakua Unity 3D hapa ikiwa tayari unayo:

unity3d.com/

Hatua ya 1: Vikwazo…

Vikwazo…
Vikwazo…

Kwa hivyo hii sio programu rahisi kufanya na mapungufu ya sasa ya GPS ya rununu na dira ya rununu.

Kuwa waaminifu vitu vinaonyesha wapi vinatakiwa labda kama 50% ya wakati. Kwa hivyo matokeo sio mazuri, lakini huwa sahihi zaidi unapozidi kukaribia vitu.

Kwa vyovyote vile, nadhani njia bora ya kutumia GPS kwa wakati huu itakuwa kutumia ramani kama pokemon go does na ukifika karibu na kitu kamera inafungua na unaona tu kitu hicho mbele yako. Katika siku zijazo ningependa kufanya mafunzo kamili juu ya utekelezaji rahisi zaidi kama huo.

Kwa vyovyote vile nilitumia sanduku la Ramani hapo awali na ninajua wana darasa la uongofu ambalo lina kazi za kubadilisha kuratibu za GPS kuwa uratibu wa Unity world. Nilidhani ningeweza kupita katika kuratibu zingine za GPS na wangeonekana mahali ninapowataka. Haikufanya kazi.

Vitu vinajitokeza kwa usahihi kulingana na kila mmoja lakini hazikuwa mahali pazuri. Kwa hivyo nilifanya utafiti na kugundua kuwa Kamera yangu ya Unity ilihitaji kuunganishwa na kaskazini ya kweli ili vitu vionekane mahali pazuri.

Shida ni kwamba dira katika simu yako sio sahihi kabisa.

Hatua ya 2: Dira ya kijinga

Dira ya kijinga
Dira ya kijinga
Dira ya kijinga
Dira ya kijinga

Shida kuu ni wakati kuweka vitu vyako mbali na kamera, ikiwa simu yako wazo la kaskazini ya kweli imezimwa hata digrii chache, vitu kwa mbali vitaonekana mbali sana.

Karibu nikiachana na mradi huu lakini rafiki aliniambia kuhusu mradi huu wa GitHub:

github.com/mapbox/mapbox-ar-unity

Hili ni jaribio la kufanya "kiwango cha ulimwengu" AR kutoka kwa Sanduku la Ramani ambapo vitu vimetiwa nanga kwa uratibu wa GPS ili uzoefu wa Ukweli uliodhabitiwa uweze kufanya kazi nje kwa umbali mrefu badala ya ndani tu ya chumba kidogo ndani ya nyumba yako.

Mradi wao hutumia deltas ya Nafasi ya AR na delta za Nafasi ya GPS kuhesabu pembe ambayo ni sawa kutoka kwa kamera ya AR hadi kaskazini ya kweli. Kwa hivyo kimsingi chukua usomaji mmoja wa GPS wakati mtumiaji anaanza programu na kuwafanya watembee katika mstari ulio sawa na kuchukua usomaji mwingine wa GPS. Halafu na vidokezo hivi viwili unaweza kujua ni mwelekeo gani mtu huyo alikuwa akitembea (kudhani kamera yake inaelekeza kwa mwelekeo anaotembea). Waligundua kuwa hii ilikuwa sahihi zaidi kuliko kutumia dira kwenye simu.

Suala lingine ambalo wanajaribu kutatua ni kuteleza na ARkit. Kufuatilia ni sawa ndani ya chumba kidogo lakini wakati nje yako kutembea umbali mrefu vitu vya AR vinaishia kuteleza mbali na mahali zinapotakiwa kuwa.

Hatua ya 3: Mwishowe Suluhisho

Mwishowe Suluhisho!
Mwishowe Suluhisho!

Kwa hivyo mradi huu wa Mapbox ulitoa njia ya kupata mwelekeo wa kuaminika unaowakabili jamaa na kaskazini ya kweli kwa hivyo kilichobaki ni kuweka tu vitu ulimwenguni.

Niliishia kupanua mfano huu kidogo ili niweze kuweka ujumbe mfupi kwenye eneo fulani la GPS na kisha kuandika habari hiyo kwa hifadhidata ya GameSpark. Hiyo ndio nitaenda kukuonyesha jinsi ya kutumia.

Shida pekee na mradi huu ni kwamba lazima upate mpangilio mzuri kabla ya kutumika.

Ninachomaanisha kwa mpangilio ni kwamba kwa kuwa sanduku la Ramani linatumia deltas za nafasi kuhesabu kichwa, unapoanza kufungua programu na lazima uhakikishe kuwa ndege ya ardhini hugunduliwa na kisha utembee kwa njia moja kwa moja kwa muda hadi usawa sahihi utakapohesabiwa.

Kwa maana hii UX ni kikwazo kingine lakini katika nyongeza ya mradi wanatoa mfano wa kuweka cubes chini mbele ya mtumiaji kutembea ili kuhakikisha mpangilio mzuri.

Kwa hivyo sasa kwa kuwa unajua mapungufu ya mradi huu wacha nikuonyeshe jinsi ya kuitumia ili wavulana wacheze karibu. Mwishowe utahitaji kuunda akaunti ya sanduku la ramani na akaunti ya michezo ya michezo ambayo yote ni bure. Nilitumia alama za michezo ili tu niweze kuokoa kuratibu za GPS mahali pengine kwa sababu wakati wa kujaribu utaanza tena na kujenga programu mara nyingi.

Pia, hii inapaswa kufanya kazi na ARkit na ARcore lakini nina iPhone tu kwa sasa ili ndio tu ninaweza kujaribu.

Hatua ya 4: Lets Get App App Working

Wacha Tufanye Programu Ifanye kazi!
Wacha Tufanye Programu Ifanye kazi!

Vitu vya kwanza pakua mradi huu kutoka GitHub:

Hifadhi faili kwenye desktop yako na uifungue kwa Umoja.

Nenda kwenye faili, jenga mipangilio, na ubadilishe jukwaa lako iwe Android au IOS.

Sasa nenda kwa Mapbox.com na unda akaunti ikiwa tayari unayo.

Shika kitufe chako cha API na urudi kwenye Umoja, bonyeza kitufe cha Mapbox hapo juu, na ubonyeze kusanidi. Bandika kifunguo chako cha API hapo.

Sasa fungua akaunti kwenye GameSparks.com na ubonyeze kitufe cha kulia kulia kuunda programu mpya.

Piga simu yoyote unayotaka na nakili ufunguo wako wa API na siri ya programu. Rudi kwa Umoja na upate kichupo cha GameSpark hapo juu. Bonyeza kusanidi na kubandika hati zako huko pia.

Hatua ya 5: Sanidi GameSpark

Sanidi GameSpark
Sanidi GameSpark

Sasa kabla ya programu kufanya kazi, tunahitaji kusanidi hifadhidata yetu.

GameSpark hutumia SQL kwa hivyo tunahitaji kwanza kuunda mkusanyiko na kuongeza hafla ambazo programu yetu hutumia kusoma, kuandika, na kufuta kutoka kwa seva.

Kwanza tengeneza mkusanyiko mpya kwenye wavuti ya GameSpark na uiite chochote unachotaka.

Sasa tunahitaji kuunda hafla 3.

Jambo la kwanza ambalo programu inahitaji kufanya ni kuandika kitu cha ujumbe kwenye hifadhidata.

Ujumbe una latitudo, longitudo, na kisha maandishi ya ujumbe.

Kwa hivyo nenda kwa kisanidi na uongeze hafla mpya. Tengeneza nambari fupi "SAVE_GEO_MESSAGE".

Weka chochote unachotaka kwa jina na maelezo.

Ongeza nambari fupi ya sifa 3:

"LAT" "LON"

"MAANDIKO"

Weka kila aina ya data kuwa kamba na weka thamani chaguomsingi kuwa 0. Fanya aina ya mkusanyiko chaguo-msingi ya kila moja "itumike katika hati."

Hatua ya 6: Ongeza Matukio ya Mwisho…

Ongeza Matukio ya Mwisho…
Ongeza Matukio ya Mwisho…

Programu pia inahitaji kupakia ujumbe wote kutoka hifadhidata na kuisoma katika Umoja wakati programu inapoanza ili tuweze kuweka ujumbe wa AR ambao umehifadhiwa kwenye hifadhidata.

Unda hafla nyingine na uiita "LOAD_MESSAGE"

Tukio hili halihitaji sifa yoyote. Tena weka chochote unachotaka kwa jina na maelezo.

Fanya kitu kimoja kwa hafla nyingine na uiita "REMOVE_MESSAGES"

Hii hata haiitaji sifa yoyote.

Sasa jambo la mwisho tunalohitaji kufanya ni kuongeza "nambari ya wingu" au nambari ya kando ya seva ambayo inaitwa wakati kila hafla imeanza kutoka kwa programu yetu.

Hatua ya 7: Ongeza Msimbo wa Wingu

Katika GameSpark nenda kwenye kichungi na nambari ya wingu.

Tunahitaji kuongeza hati kwa kila hafla ambayo tumetengeneza tu.

Katika tukio la LOAD_MESSAGE ongeza nambari hii na uihifadhi:

var messageData = Spark.runtimeCollection ("GeoMessage");

mshale wa var = messageData.find ();

var allMessages = ;

wakati (cursor.hasNext ()) {

var obj = mshale.next ();

futa (obj ["_id"]);

ujumbe wote. Push (obj);

}

Spark.setScriptData ("all_Messages", ujumbe wote); // kurudisha data zote

Katika tukio la REMOVE_MESSAGES ongeza nambari hii:

var messageData = Spark.runtimeCollection ("GeoMessage");

messageData.remove ({});

Mwishowe katika tukio la SAVE_MESSAGES ongeza hii:

var geoMessageList = Spark.runtimeCollection ("GeoMessage");

var messageLat = Spark.getData () LAT;

var messageLon = Spark.getData (). LON;

var messageText = Spark.getData (). TEXT;

var currentMessage = {

"messLat": ujumbeLat,

"messLon": ujumbeLon,

"messText": ujumbeText,

};

geoMessageList.insert (sasaMessage);

Hatua ya 8: TUMEKWISHA

TUMEKWISHA!
TUMEKWISHA!

Mradi huu unatumia kitambulisho cha kipekee cha kifaa chako kuthibitisha na seva ya GameSparks ili sasa urudi kwenye Umoja na ubonyeze uchezaji, na unapaswa kuona kwenye kontena "kifaa kilichothibitishwa…"

Sasa nenda kwenye faili, jenga mipangilio, na bonyeza bonyeza. Ikiwa haujawahi kutengeneza programu ya Android au IOS unaweza kuhitaji kuanzisha akaunti ya maendeleo na Google au Apple.

Mara tu programu iko kwenye simu yako unahitaji kwanza uhakikishe kuwa ARKit au ARCore hugundua ndege ya ardhini. Sasa bonyeza kitufe cha logi kwenye kona ya chini kushoto. Tembea mbele hatua kadhaa na utaona "mpangilio wa kompyuta" ukiwa na rangi ya samawati nyepesi. Sasa vifungo vya UI vinapaswa kuonekana na ikiwa ujumbe wowote utapakiwa kwenye hifadhidata yako watawekwa ulimwenguni.

Kuweka alama kwenye ujumbe mpya wa GPS AR mahali pengine tembea kwenda kwenye eneo ambalo unataka ujumbe uwe na bonyeza alama ya ujumbe upande wa kulia wa skrini. Chapa ujumbe wowote unayotaka na bonyeza kitufe cha pini!

Ilipendekeza: