Orodha ya maudhui:
- Hatua ya 1: Sanidi IBM Watson SDK katika Umoja
- Hatua ya 2: Jaribu Nakala ya IBM Watson kwa Hotuba
- Hatua ya 3: Sanidi API ya Utaftaji Maalum ya Google
- Hatua ya 4: Sanidi Vuforia katika Umoja
- Hatua ya 5: Unda Prefab ya Picha
- Hatua ya 6: Unda Hati ya Google API
- Hatua ya 7: Unda Kiwanda chetu cha Picha
- Hatua ya 8: Tumefanywa
Video: Lets Tengeneza Ukweli wa Augmented App kwa MEMES !: Hatua 8
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:54
Katika Agizo hili tutafanya programu ya ukweli iliyoongezwa ya Android na IOS katika Unity3D inayotumia Google API kutafuta memes. Tutatumia kugundua ndege ya ardhini ya Vuforia katika Umoja ili programu hii ya rununu ifanye kazi kwa watumiaji wengi wa Android na IOS. Kutumia Vuforia pia kuturuhusu kuwa na picha zilizotiwa nanga katika eneo moja ili tuweze kutembea kupitia uwanja huu wa picha na vitu vitakaa hapo vilipo.
Tutajaribu pia IBM Watson API mpya ili tuweze kufanya utaftaji huu kwa sauti yetu na kuongeza usindikaji wao wa lugha asili.
Kwa hivyo habari mbaya sio hizi za API ni bure kabisa, lakini habari njema ni kwamba wote wako huru kujaribu. API ya utaftaji wa google inakupa utaftaji bure wa 100 kwa siku, na API ya IBM Watson inakupa mwezi wa kwanza bure.
Kwa kifupi, programu hii itapata hotuba yetu kutoka kwa kipaza sauti katika Umoja, tuma hiyo kwa seva za IBM Watson, ambazo zitaturudishia maandishi. Kisha tutachukua maandishi hayo na kuipeleka kwenye seva za Google ambazo zitatuletea orodha ya picha za URL zilizo katika fomu ya JSON.
Hatua ya 1: Sanidi IBM Watson SDK katika Umoja
Ili kupata API ya Watson unahitaji kwanza kupata hati zako kutoka kwa wavuti yao. Nenda kwa Console.bluemix.net, unda na akaunti, na uingie. Nenda kwenye akaunti yako ya IBM na uende kwenye Orgs za kuanzisha wingu na uunda nafasi mpya. Sasa nenda kwenye dashibodi yako na ubonyeze kuvinjari huduma, ongeza hotuba kwa huduma ya maandishi kwa sababu ndivyo tutakavyotumia. Chagua eneo lako, shirika, na nafasi na unda mradi. Sasa utaona hati zako za API chini.
Pakua Umoja ikiwa hauna tayari na uingize IBM Watson SDK kutoka duka la mali katika Umoja. Tunaweza kujaribu hii kwa kuunda kitu tupu cha mchezo na kuiita IBM Watson na kuongeza mfano wa hati ya utiririshaji. Hati hii tayari imewekwa kurekodi sauti kutoka umoja na kuituma kwa seva za Watson kwa usindikaji.
Kwa sasa tutatumia tu mfano huu wa mfano kwa sababu tuna mengi zaidi ya kufanya lakini labda wakati mwingine tunaweza kuingia ndani zaidi ya mambo ya Watson kwa sababu ningependa kufanya kitu na Vision API.
Hatua ya 2: Jaribu Nakala ya IBM Watson kwa Hotuba
Hati hii inatafuta kitu cha maandishi ya UI kwa hivyo tuunde kitufe kipya cha UI hii itatupa maandishi ambayo tunahitaji, tutatumia kitufe baadaye. Weka turubai kwa ukubwa na skrini na ubadilishe kitufe kidogo. Tia nanga chini kushoto. Buruta maandishi hayo kwenye nafasi tupu. Fungua hati na wacha tuongeze sifa zetu za IBM Watson, pata mahali ambapo maandishi ya "resultsField" yanatumiwa na uweke kwa "alt.transcript" tu kwa sababu tutatumia maandishi haya kutafuta google. Sasa kabla ya kujaribu hili tunahitaji kutengeneza saizi ya maandishi yenyewe kwa nguvu ili chochote tunachosema kitatoshea ndani ya sanduku. Rudi kwenye maandishi na uweke sawa sawa. Andika maandishi fulani ili ujaribu. Sasa tunapobofya cheza maneno yetu yatasajiliwa kwa maandishi kutoka Watson Nakala kwa API ya Hotuba.
Hatua ya 3: Sanidi API ya Utaftaji Maalum ya Google
Kipande kinachofuata tunachohitaji kufanya ni kupata api ya utaftaji wa Google iliyoundwa ili kutumia katika Umoja. Kwa kiwango cha juu tutakuwa tukifanya ombi la HTTP kutoka Umoja kwa seva za Google ambazo zitaturudishia majibu katika muundo wa JSON.
Kwa hivyo nenda kwenye ukurasa wa kusanidi Tafuta na Google wa JSON API, bonyeza ili kupata kitufe cha API na unda programu mpya. Weka hii wazi. Sasa tunaweza kwenda kwenye jopo la kudhibiti. Weka kitu chochote kwa wavuti za kutafuta, uipe jina lolote, na ubonyeze kuunda.
Bonyeza jopo la kudhibiti na acha ufanye marekebisho kadhaa: tunataka kutafuta memes, na kuwasha utaftaji wa picha. Chini ya tovuti za kutafuta ubadilishe kwenye wavuti nzima. Bonyeza sasisho ili kuokoa kila kitu.
Sasa pata mchunguzi wa api ya google na uende kwenye API ya utaftaji wa kawaida. Hii itaturuhusu kuunda muundo wa JSON tunayopata kutoka Google. Kwa hivyo weka chochote kwa swala kwa sasa, weka kitambulisho chako cha injini ya utaftaji, weka 1 kwa kichujio ili tusipate marudio, weka 10 chini ya num kwa sababu hiyo ndio idadi kubwa ya matokeo tunaweza kurudi kwa wakati mmoja, weka picha ya aina ya utaftaji kwa sababu ndio tunataka kurudi. Weka 1 kwa mwanzo, na mwishowe chini ya uwanja weka "vitu / kiunga" kwa sababu kwa kila kitu kilichorudishwa tunataka tu kiunga cha picha. Sasa unapobofya kutekeleza utaona kuwa tunapata viungo 10 vya picha nzuri vilivyorudishwa.
Sasa lazima tuingize picha hizi katika Umoja.
Hatua ya 4: Sanidi Vuforia katika Umoja
Wacha Vuforia ifanye kazi ili tuweze kupata ugunduzi wa ndege yao ya ardhini. Hifadhi eneo lako la sasa na uende kwenye mipangilio ya kujenga. Badilisha jukwaa lako kwa Android au IOS na ikiwa yako kwenye IOS imeweka kitu kwa kitambulisho cha kifungu, ongeza maelezo ya matumizi ya kamera na kipaza sauti. Chini ya mipangilio ya XR angalia ukweli uliodhabitiwa wa Vuforia unasaidiwa.
Sasa katika eneo futa kamera kuu na ongeza Vuforia ARCamera. Nenda kwenye sehemu ya usanidi na ubadilishe hali ya ufuatiliaji iwe ya mkao. Ondoa alama kwenye hifadhidata zote zinazosababisha hatuitaji.
Sasa ongeza mtaftaji wa ndege na tunahitaji kupuuza tabia yake chaguomsingi kwa sababu tunataka kupeleka hatua ya ndege ya ardhini mara moja tu ili tupate Tuma Hatua ya mara moja kwenye wavuti ya Vuforia. Kuleta hati hiyo katika Umoja na kuiweka kwenye kipata ndege, ukiondoa hati ya zamani iliyokuwapo. Badilisha hali iwe ya kuingiliana na uhakikishe kuwa kazi ya "OnInteractiveHitTest" inaitwa kwenye Tukio hilo la Umoja. Wakati tuko hapa hebu tuweke kitufe ambacho tulifanya mapema kufanya kazi mara tu tumepata ndege ya ardhini, weka hali yake ya msingi kuwa haifanyi kazi. Sasa weka ndege ya ardhini katika eneo la tukio na ibadilishe kuwa ya katikati ya hewa kwa sababu tunataka picha zote zikielea hewani. Buruta ndege hii ya ardhini kwenye nafasi tupu kwenye kipata ndege.
Hatua ya 5: Unda Prefab ya Picha
Kabla ya kuanza kuweka vipande hivi pamoja tunahitaji kuunda kitu cha mchezo kilichopangwa tayari ambacho tunaweza kusisitiza kila wakati picha inapopakiwa. Kwa hivyo tengeneza kitu tupu cha mchezo chini ya uwanja wa ndege ya ardhini na uiita "picPrefab". Unda quad kama mtoto wa hiyo na upime kwa 2, zungusha y yake kwa digrii 180 ili wazazi wasonge vector ambayo inaonyeshwa kama mshale wa bluu ni mbele ya quad.
Unda hati mpya inayoitwa "Picha ya Tabia" na uiongeze kwenye picPrefab yetu.
Sasa buruta picha hii kwenye folda ya mali yako na hii ndio tutaweka kila picha.
Hati yetu ya "Picha ya Tabia" inapaswa kuonekana kama hii:
kutumia System. Collections;
kutumia System. Collections. Generic; kutumia UnityEngine; Tabia ya Tabia ya Jamii: MonoBehaviour {public Renderer quadRenderer; Vector ya kibinafsi3 taka Nafasi; tupu Anza () {// angalia kubadilisha kamera. AngaliaAt (Kamera.main.transform); Vector3 desiredAngle = mpya Vector3 (0, transform.localEulerAngles.y, 0); transform.rotation = Quaternion. Euler (takaAngle); // nguvu ndani ya hewa takaPosition = transform.localPosition; transform.localPosition + = Vector3 mpya (0, 20, 0); } Sasisha batili () {transform.localPosition = Vector3. Lerp (transform.localPosition, desiredPosition, Time.deltaTime * 4f); } LoadImage ya utupu wa umma (kamba url) {StartCoroutine (LoadImageFromURL (url)); } IEnumerator LoadImageFromURL (kamba url) {WWW www = mpya WWW (url); mavuno kurudi www; quadRenderer.material.mainTexture = www.texture; }}
Hatua ya 6: Unda Hati ya Google API
Sasa hebu buruta rejeleo kwa mtoaji wa quad kutoka kwa "picPrefab" yetu.
Tunayo maandishi mawili tu ya kufanya, kwa hivyo hebu tuunde hati ya C # iitwayo GoogleService.cs na PictureFactroy.cs.
Ndani ya "GoogleService" weka nambari hii inayofanya ombi letu:
kutumia System. Collections;
kutumia System. Collections. Generic; kutumia UnityEngine; kutumia UnityEngine. UI; Huduma ya umma ya GoogleService: MonoBehaviour {public PictureFactory pictureFactory; kitufe cha maandishi ya ummaNakala; kamba ya kibinafsi ya API API_KEY = "WEKA API MUHIMU HAPA !!!!!"; utupu wa umma GetPictures () {StartCoroutine (PictureRoutine ()); } IEnumerator PictureRoutine () {buttonText.transform.parent.gameObject. SetActive (uwongo); swala ya kamba = kifungoText.text; swala = WWW. EscapeURL (swala + "memes"); // futa picha za zamani pichaFactory. Futa Picha za Kale (); // weka vector mbele ya kamera ili tuweze kuzunguka wakati vitu vinawekwa Vector3 cameraForward = Camera.main.transform.forward; // tunaweza kupata tu matokeo 10 kwa wakati mmoja kwa hivyo tunalazimika kupitia na kuhifadhi maendeleo yetu kubadilisha nambari ya kuanza baada ya kila safu ya 10Num = 1; kwa (int i = 1; i <= 60; i + = 10) {string url = "https://www.googleapis.com/customsearch/v1?q=" + query + "& cx = 011535004225295624669% 3Afeb1gwic6bs & filter = 1 & num = 10 & searchType = image & start = "+ i +" & mashamba = vitu% 2Flink & key = "+ API_KEY; WWW www = mpya WWW (url); mavuno kurudi www; pichaFactory. CreateImages (ParseResponse (www.text), rowNum, cameraForward); safuNum ++; } mavuno kurudi WaitForSeconds mpya (5f); kifungoText.transform.parent.gameObject. SetActive (kweli); } Orodha ya ParseResponse (maandishi ya kamba) {Orodha urlList = Orodha mpya (); kamba urls = maandishi. Split ('\ n'); foreach (laini ya kamba katika urls) {if (line. Contains ("link")) {string url = line. Substring (12, line. Length-13); // kuchuja kwa png au jpg haionekani kufanya kazi kutoka Google kwa hivyo tunaifanya hapa: ikiwa (url. Contains (".jpg") || url. Contains (".png")) {urlList. Add (url); }}} rudisha orodha ya url; }}
Hatua ya 7: Unda Kiwanda chetu cha Picha
Ndani ya PichaFactory.cs weka nambari hii ili kuunda picha zetu zote na upakie muundo wao kutoka kwa URL.
kutumia System. Collections;
kutumia System. Collections. Generic; kutumia UnityEngine; darasa la umma PictureFactory: MonoBehaviour {umma GameObject picPrefab; Huduma ya umma ya Google googleService; utupu wa umma DeleteOldPictures () {if (transform.childCount> 0) {foreach (Badilisha mtoto katika hii.transform) {Destroy (child.gameObject); }}} Picha za Utupu za umma (Orodha ya Orodha, orodha ya matokeo, Vector3 camForward) {int picNum = 1; Kituo cha Vector3 = Kamera.main.transform.position; foreach (kamba ya url katika orodha ya urlList) {Vector3 pos = GetPosition (picNum, resultNum, camForward); GameObject pic = Kuimarisha (picPrefab, pos, Quaternion.identity, this.transform); pic. GetComponent (). LoadImage (url); picNum ++; }} Vector3 GetPosition (int picNum, int rowNum, Vector3 camForward) {Vector3 pos = Vector3.zero; ikiwa (picNum <= 5) {pos = camSambaza + Vector3 mpya (picNum * -3, 0, rowNum * 3.5f); } mwingine {pos = camMbele + Vector3 mpya ((picNum% 5) * 3, 0, rowNum * 3.5f); } kurudi pos; }}
Hatua ya 8: Tumefanywa
Unda kitu cha mchezo tupu kinachoitwa GoogleService na uweke hati ya "GoogleSerivice" juu yake.
Buruta hati ya "PictureFactory" kwenye uwanja wa ndege ya ardhini kwa sababu picha zetu zote zitaundwa kama watoto wa kitu hiki cha mchezo.
Buruta marejeo yanayofaa katika mkaguzi, fanya kitu kimoja kwa huduma ya google.
Jambo la mwisho tunalopaswa kufanya ni kuhakikisha kazi yetu ya "GetPictures" inaitwa. Kwa hivyo acha kwenda kwenye hafla ya "onClick" ya kitufe chetu na kuipigia kutoka hapo.
Sasa tunaweza kubofya kucheza na kujaribu hii. Hakikisha kuwezesha hatua ya ndege ya ardhini na kitufe. Sema neno, na bonyeza kitufe ili utafute maandishi hayo!
Sasa kupata programu hii kwenye simu yako, inganisha na uende kwenye Faili-> Jenga Mipangilio. Piga kujenga na kukimbia!
Napenda kujua katika maoni ikiwa una maswali yoyote!
Ilipendekeza:
Ukweli wa Ukweli uliodhabitiwa: Hatua 11
Ukweli uliodhabitiwa Puzzle: Michezo ya fumbo ni ya ajabu tu. Kuna mafumbo ya kila aina, fumbo la kawaida la jigsaw, maze, na ishara na hata michezo ya video ya aina hii (kwa mfano, Kapteni Toad). Michezo ya fumbo inahitaji mchezaji kuunda mkakati wa utatuzi wa matatizo.
Kuunda UI Iliyopindika katika Umoja kwa Ukweli wa kweli: Hatua 4
Kuunda UI Iliyopindika katika Umoja wa Ukweli wa kweli: Ikiwa unatafuta suluhisho la bure na rahisi kuunda kiolesura cha mtumiaji kilichopindika kwa Maombi yako ya Ukweli wa kweli au Mchezo wa VR mahali pako pa kulia. Katika blogi hii utajifunza kuunda kipengee cha ui kilichopindika kwa umoja kwa kutumia Viongezeo vya Umoja wa UI.
Programu ya Ukweli iliyoongezwa kwa Kompyuta: Hatua 8
Programu ya Ukweli iliyoongezwa kwa Kompyuta: Mafunzo haya yatakuonyesha jinsi ya kutengeneza programu ya ukweli uliodhabitiwa kwa Kompyuta. Tutatumia Unity3D na kugundua ndege ya ardhini ya Vuforia kufanya programu isiyo na alama ya AR kwa Android au IOS. Tutapitia kuongeza mtindo wa 3D kwa Umoja na kuusogeza
Tengeneza glasi yako halisi ya Ukweli: Hatua 4
Tengeneza Glasi yako ya Ukweli halisi: Vifaa: - Sanduku la kiatu cha Kadibodi- Mikasi / X-Acto kisu- 2 45mm lensi za biconvex- vipande 4 vya Velcro- Gluestick
CityCoaster - Jenga Coaster yako ya Ukweli iliyoongezwa kwa Biashara Yako (TfCD): Hatua 6 (na Picha)
CityCoaster - Jenga Coaster yako ya Ukweli iliyoongezwa kwa Biashara Yako (TfCD): Mji ulio chini ya kikombe chako! CityCoaster ni mradi uliozaliwa ukifikiria juu ya bidhaa ya Rotterdam Uwanja wa Ndege wa Hague, ambayo inaweza kuelezea utambulisho wa jiji, ikiburudisha wateja wa eneo la mapumziko na ukweli uliodhabitiwa. Katika mazingira kama hayo