Բովանդակություն:

Լրացուցիչ իրականության ծրագիր սկսնակների համար. 8 քայլ
Լրացուցիչ իրականության ծրագիր սկսնակների համար. 8 քայլ

Video: Լրացուցիչ իրականության ծրագիր սկսնակների համար. 8 քայլ

Video: Լրացուցիչ իրականության ծրագիր սկսնակների համար. 8 քայլ
Video: ՄԻ ՓՈՔՐ ՖՈՐԵՔՍԻ ՄԱՍԻՆ ՍԿՍՆԱԿՆԵՐԻ ՀԱՄԱՐ 2024, Նոյեմբեր
Anonim
Լրացուցիչ իրականության ծրագիր սկսնակների համար
Լրացուցիչ իրականության ծրագիր սկսնակների համար
Լրացուցիչ իրականության ծրագիր սկսնակների համար
Լրացուցիչ իրականության ծրագիր սկսնակների համար

Այս ձեռնարկը ցույց կտա ձեզ, թե ինչպես կատարելագործված իրականության ծրագիր պատրաստել սկսնակների համար: Մենք կօգտագործենք Unity3D- ի և Vuforia- ի ստորերկրյա ինքնաթիռի հայտնաբերումը `Android- ի կամ IOS- ի համար առանց նշիչների AR ծրագիր ստեղծելու համար: Մենք կանցնենք 3D մոդելի ավելացմանը Unity- ին և այն շարժելով շարժական ջոյսթիկով: Այս մեթոդը կգործի նաև ցանկացած այլ անվճար 3D մոդելի հետ, որը կարող եք գտնել:

Քայլ 1: Արդյո՞ք սա կաշխատի ձեր հեռախոսի վրա:

Արդյո՞ք սա կաշխատի ձեր հեռախոսի վրա
Արդյո՞ք սա կաշխատի ձեր հեռախոսի վրա

Առաջին հերթին մենք պետք է համոզվենք, որ ձեր հեռախոսն աջակցում է Vuforia- ի ստորգետնյա ինքնաթիռի հայտնաբերմանը, այնպես որ համոզվեք, որ ձեր հեռախոսը գտնվում է աջակցվող սարքերի ցանկում:

library.vuforia.com/articles/Solution/Vufo…

Միակ բանը, ինչ ձեզ անհրաժեշտ կլինի ծրագրային ապահովման առումով, Unity- ի անվճար տարբերակն է: Եթե այն դեռ չունեք, գնացեք Unity3d.com և կտտացրեք Ստանալ Unity: Այժմ ես օգտագործում եմ 2018.2.0 տարբերակը, եթե այս տարբերակն այլևս հասանելի չէ, գնացեք Unity- ի հին տարբերակները և ներբեռնեք 2018.2.0 -ը:

Տեղադրման գործընթացում համոզվեք, որ փաթեթները տեղադրեք IOS- ի կամ Android- ի համար `կախված նրանից, թե ինչ տեսակի հեռախոս ունեք և համոզվեք, որ տեղադրել Vuforia- ի աջակցությունը:

Քայլ 2. Սկսեք նոր միասնության նախագիծ:

Սկսեք նոր միասնության նախագիծ
Սկսեք նոր միասնության նախագիծ

Սկսեք նոր Unity նախագիծ և ջնջեք հիմնական տեսախցիկը: Վերևի ցանկի տողում անցեք խաղի օբյեկտ ՝ vuforia և ավելացրեք «ARCamera»:

Նախքան որևէ բան աշխատելն է, մենք պետք է միացնենք Vuforia- ին, այնպես որ գնացեք ֆայլերի կառուցման կարգավորումներ, փոխեք հարթակ, XR կարգավորումներ և միացրեք Vuforia հավելյալ իրականության աջակցություն:

Կտտացրեք «ARCamera» խաղի օբյեկտի վրա, իսկ տեսուչում կտտացրեք Vuforia- ի կազմաձևմանը: Ներքևում միացրեք սարքի հետևումը և փոխեք հետևման ռեժիմը դիրքի:

Ավելացրեք վերգետնյա հարթակի հարթակ և ինքնաթիռի որոնիչ նույն Vuforia ընտրացանկից, որից ստացել եք տեսախցիկը:

Ինքնաթիռի որոնիչում բացվող ընտրացանկը փոխեք ինտերակտիվ, չեղարկեք կրկնակի փուլի և քաշեք գետնին հարթության բեմի առարկան դեպի հարթության որոնիչի դատարկ խարիսխի անցքի մեջ:

Այժմ մենք պետք է ավելացնենք մեր ջոյստիկը, որպեսզի վերևի ընտրացանկում գնանք ակտիվներ, ներմուծենք փաթեթ, մուտքագրենք հարթակ:

Նոր ավելացված ստանդարտ ակտիվների թղթապանակում գնացեք նախնական հավաքածուներ և քաշեք բջջային մեկ փայտիկի կառավարման նախածանցը դեպքի վայր:

Deնջել ցատկելու կոճակը: Հիերարխիայում աջ սեղմեք և ավելացրեք UI, իրադարձությունների համակարգ:

Վերջապես, joystick- ի արմատային խաղի օբյեկտի վրա կտտացրեք ՝ բաղադրիչ ավելացնելու համար և կտավի չափիչ ավելացնելու համար: Էկրանի չափի հետ փոխեք դրա բացվող սանդղակը: Joystick սցենարի վրա շարժման տիրույթը փոխեք 25 -ի:

Քայլ 3: Ստեղծեք անջատիչ:

Ստեղծեք Toggle
Ստեղծեք Toggle

Այժմ բովանդակության տեղադրման վարքագծի կանխադրված պահվածքն այն է, երբ մենք կտտացնում ենք էկրանին, հիմքի հարթությունը վերադասավորվում է: Սա ներառում է, երբ մենք սեղմում ենք UI օբյեկտների վրա, ինչպիսիք են կոճակները կամ ջոստիկները, որպեսզի դա այն չլինի, ինչ մենք ուզում ենք: Քանի որ Vuforia- ն ներկայումս թույլ չի տալիս խմբագրել բովանդակության դիրքավորման վարքագիծը `այս խնդիրը շտկելու համար, մենք կարող ենք կամ գրել մերոնք զրոյից, կամ հանուն այս ձեռնարկի մենք պարզապես պատրաստվում ենք ստեղծել մի անջատիչ, որը միացնում կամ անջատում է այս գործառույթը:

Աջ սեղմեք ջոյստիկի վրա և ստեղծեք UI, միացրեք: Ընդլայնեք ամեն ինչ և, եթե ցանկանում եք, փոխեք գույները կամ տեքստը:

Անջատիչի միացված արժեքի փոփոխված հատվածում ավելացրեք հարթության որոնիչը և ստիպեք այն ակտիվացնել խաղի օբյեկտը `հիմնվելով անջատիչի արժեքի վրա: Այժմ, երբ օբյեկտը տեղադրվի աշխարհում, մենք, ամենայն հավանականությամբ, պետք է անջատենք անջատիչը, այնպես որ գնանք դեպի բովանդակության դիրքավորման վարքագիծ և քաշեք այն անջատիչով դեպի նույնիսկ տեղադրված բովանդակությունը և անջատիչն անջատեք:

Քայլ 4: ՀՐԵՇ

ՀՐԵՇՏ!
ՀՐԵՇՏ!

Գնացեք պատուհան, ընդհանուր, և ավելացրեք ակտիվների խանութի պատուհան:

Որոնեք «կերպարների հրեշ» և դասավորեք անվճար, գրավեք առաջին արդյունքը և ներմուծեք այն:

Քաշեք հրեշի հավաքածուն գետնի հարթության տակ ՝ դարձնելով այն երեխա: Սահմանեք դրա դիրքը և պտույտը զրոյի: Նրա x y և z սանդղակը սահմանեք.1.

Գնացեք անիմատոր և ջնջեք ամեն ինչ, բացի մուտքից: Քաշեք քայլարշավը և անգործունյա անիմացիաները հրեշի անիմացիաների թղթապանակից:

Պարամետրերի բաժնում կտտացրեք գումարած կոճակին և ավելացրեք երկու գործարկիչ `« քայլել »և« պարապ »:

Կտտացրեք յուրաքանչյուր անիմացիայի վրա և ավելացրեք անցում մյուսին:

Կտտացրեք յուրաքանչյուր անցում և ավելացրեք պայման, առաջինի համար քայլեք, իսկ երկրորդի համար ՝ անգործուն: Չեղարկելը ելքի ժամանակ ունի և բոլոր սահիչները քաշեք յուրաքանչյուրի վրա 0 -ի վրա:

Այժմ մենք ցանկանում ենք, որ յուրաքանչյուր անիմացիա հանգույց լինի, այնպես որ կտտացրեք յուրաքանչյուր անիմացիայի վրա և անցեք դրա հոլովակին: Սեղմեք խմբագրել յուրաքանչյուրի վրա և ստուգեք հանգույցի ժամանակը:

Քայլ 5: Վերահսկել մեր բնավորությունը:

Վերահսկել մեր բնավորությունը
Վերահսկել մեր բնավորությունը

Աջ սեղմեք ակտիվների թղթապանակում և ստեղծեք C# սցենար «CharacterController» անունով և ավելացրեք սա.

օգտագործելով System. Collections;

օգտագործելով System. Collections. Generic; օգտագործելով UnityEngine; օգտագործելով UnityStandardAssets. CrossPlatformInput; հանրային դասի CharacterController: MonoBehaviour {private const float speed =.1f; մասնավոր անիմատոր անիմացիա; // Օգտագործեք սա սկզբնավորման համար void Start () {anim = GetComponent (); } // Թարմացումը կոչվում է մեկ անգամ մեկ շրջանակի համար անվավեր Update () {// տեղափոխել նիշը joystick input float x = CrossPlatformInputManager. GetAxis («Հորիզոնական»); float y = CrossPlatformInputManager. GetAxis («Ուղղահայաց»); եթե (! x. Equals (0) &&! y. Equals (0)) {transform.eulerAngles = new Vector3 (transform.eulerAngles.x, Mathf. Atan2 (x, y) * Mathf. Rad2Deg, transform.eulerAngles.z); } if (! x. Equals (0) ||! y. Equals (0)) {transform.position += transform.forward * Time.deltaTime * արագություն; anim. SetTrigger («քայլել»); } else {anim. SetTrigger («պարապ»); }} public void PlaceCharacter () {transform.localPosition = Vector3.zero; }}

Քայլ 6: Թույլ տվեք բացատրել:

Թույլ տուր բացատրեմ
Թույլ տուր բացատրեմ

Նախևառաջ մենք ունենք մշտական բոց, որը սահմանված է վերևում, այնպես որ, եթե ցանկանում եք, որ ձեր հրեշը ավելի արագ կամ դանդաղ շարժվի, պարզապես փոխեք այդ արժեքը:

Այս սցենարը կավելանա մեր հրեշին, որպեսզի մենք կարողանանք անել «GetComponent ()» - ի նման մի բան ՝ այս հրեշների Animator- ին հղում ստանալու համար (այդ կերպ մենք կարող ենք անիմացիաները խաղալ կոդից):

Այնուհետև մենք ստանում ենք ջոյսթիկի x և y շարժումները խաչաձև հարթակի մուտքային կառավարիչից և դրանք պահում ենք փոփոխականի մեջ:

Այնուհետև մենք օգտագործում ենք այդ երկու փոփոխականները ՝ հրեշին շրջելու և տեղափոխելու համար ՝ ըստ ջոյսթիկի մուտքի:

Եթե հրեշը շարժվում է, մենք կխաղանք զբոսանքի անիմացիան, իսկ եթե այն չի շարժվում, մենք կխաղանք անգործուն անիմացիան:

Վերջին գործառույթը, որը մենք ունենք, այն է, որ հրեշների տեղական դիրքը զրոյի ենք հասցնում ամեն անգամ, երբ գետնի հարթությունը վերափոխվում է: Այսպիսով, մեր հավելվածի ստեղծման եղանակով, Vuforia- ն կտեղափոխի ստորգետնյա հարթության փուլը ամեն անգամ, երբ կտտացնում ենք էկրանին: Մեր հրեշը կարող է շարժվել բեմի շուրջ, այնպես որ մենք պետք է զրոյի հասցնենք նրա դիրքը ՝ բեմի համեմատ ամեն անգամ, երբ այն վերադասավորվում է:

Քայլ 7: Ավարտելով հպումները:

Վերջնական հպում!
Վերջնական հպում!

Ի վերջո, մենք պարզապես պետք է ավելացնենք մեր CharacterController.cs- ը մեր հրեշին: Այսպիսով, անցեք հիերարխիայում գտնվող հրեշ նախածանցի արմատային փոխակերպմանը և կտտացրեք դրա վրա: Սա տեսախցիկի վրա կտանի դեպի աջ: Կտտացրեք ավելացնել բաղադրիչ և որոնեք նիշերի վերահսկիչի սցենարը: Ավելացրեք դա:

Մենք նաև պետք է համոզվենք, որ մեր PlaceCharacter գործառույթը իրականում կանչվում է, ուստի գնացեք ինքնաթիռի որոնիչ խաղի օբյեկտ և կտտացրեք դրա վրա:

Տեսուչում պետք է լինի առաջադեմ բաժին, որի վրա կարող եք սեղմել ՝ ընդլայնելու համար: Այնտեղ կա միասնության միջոցառում, որը կոչվում է «OnContentPlaced»: Դրան ավելացրեք գործառույթ ՝ կտտացնելով գումարած կոճակին: Քաշեք հրեշին այնտեղի դատարկ անցքի մեջ, ընտրեք նիշերի վերահսկիչի սցենարը և վերջապես ընտրեք «PlaceCharacter» գործառույթը:

Քայլ 8: Եկեք այն վերցնենք ձեր հեռախոսից:

Եկեք այն վերցնենք ձեր հեռախոսից
Եկեք այն վերցնենք ձեր հեռախոսից

Եթե դուք Android- ի կամ IOS- ի վրա եք, սեղմեք ֆայլը, ստեղծեք կարգավորումներ և անցեք ձեր համապատասխան հարթակի նվագարկիչի կարգավորումներ: Երկու դեպքում էլ համոզվեք, որ ինչ -որ բան տեղադրեք փաթեթի նույնացուցիչի համար («com. YourName. YourAppName» տեսքով): Նաև համոզվեք, որ տեսախցիկի օգտագործման նկարագրության դաշտում ունեք ինչ -որ հաղորդագրություն:

Եթե Android- ի վրա եք ջնջում Android TV- ի համատեղելիությունը և կառուցման նվազագույն նպատակը փոխել եք Nougat- ին:

Կամ հարվածեք կառուցել և գործարկել, կամ հարվածել կառուցել և տեղադրել.apk- ը ADB- ով կամ Android Studio- ով:

Եթե ձեր IOS- ում սեղմել եք build- ը, ապա բացեք արդյունքում ստացված թղթապանակը XCode- ում: Գրանցվեք Apple ծրագրավորողի անվճար հաշվին (եթե մենք դեռ չունենք) ընտրեք ձեր թիմը և սեղմեք «Play» կոճակը ՝ այն ձեր հեռախոսում ստանալու համար:

Եթե հարցեր ունեք, ասեք ինձ մեկնաբանություններում:

Խորհուրդ ենք տալիս: