Zašto biste trebali raditi proširenu stvarnost ako ste programer za JavaScript - i kako započeti

Ako ste JavaScript koder koji još uvijek kasni sa sastavljanjem konačnog popisa rezolucija za 2019., dopustite mi da vam pružim pomoć: Počnite smišljati kako ući u proširenu stvarnost (AR).

Kombinirana proširena / mješovita / virtualna stvarnost (AR / MR / VR) uživa frenetičan rast od 2016. godine, proizilazeći s granične tržišne vrijednosti od nešto više od 6 milijardi dolara do one koja bi mogla doseći 210 milijardi dolara prodaje (uključujući hardver) do 2022. godine Od svih, proširena stvarnost bilježi stalan rast.

Isprva bi se programer za JavaScript (web) koji želi ući u AR čamac mogao osjećati obeshrabreno kada pronađe uobičajene potrebne vještine; a onda postoje oni koji pitaju Strojno učenje ili Internet stvari. Međutim, ako ste uglavnom programer JavaScript, smatrajte se blagoslovljenim: jezik se često spominje kao onaj koji biste trebali znati za ulazak u ovaj sektor. Razlog? Trenutno se puno razvoja AR-a odvija na webu . I ovdje vlada JavaScript.

Prošireni poslovi za obožavatelje JavaScript-a - Stvarno?

Možda ne prebrzo. Postoji mnogo primjera kada AR / MR / VR blista sam od sebe, posebno na tržišnim nišama, ali industrija nije u potpunosti shvatila punu vrijednost tehnologije za općeg potrošača. Jednom kad se to riješi, industrija bi zasigurno proizvodila više AR / MR / VR proizvoda, što bi rezultiralo većim brojem radnih mjesta.

Za neke analitičare očekuje se da će AR imati najprošireniji utjecaj, dijelom i zato što ne zahtijeva provođenje određenih uređaja i uvjeta kao što to čini VR.

AR ima korisnost za gotovo sve, prekrivajući korisne i relevantne informacije o svijetu oko vas. AR može biti sveobuhvatan na način na koji to VR ne može.- David McQueen -Strategy Analytics- iz intervjua na Twice

Na industriji ostaje da pronađu kako AR učiniti svakodnevnom tehnologijom. Prema nekim tvrtkama, posebno u području mobilnih telefona, bolje iskorištavanje AR potencijala svodi se na dobro poznato pravilo: JEDNOSTAVNOST .

Iako je Unity postao zadani put za izgradnju AR aplikacija, sve većem broju treba samo dodavanje AR-a - iz članka Benjamina Devinea, Homestory AR

U mnogim bi slučajevima resursi za vodeće AR alate mogli biti pretjerani. Umjesto toga, gomila dobrih UX upravljanih značajki preko nekih 2D / 3D elemenata mogla bi biti više nego dovoljna za izradu upečatljivih proizvoda. Nešto što programer JavaScript redovito radi.

Tada je moguće da će bilo koji programer JavaScript ugrađivati ​​(ne) standardne AR / VR značajke kao proširenje svojih tradicionalnih dužnosti u budućnosti. A ako je potreban, JavaScript je dovoljno robustan za složenije zadatke. Nebo je granica.

Postaje proširen JavaScript

Prije početka, predložio bih da pogledate nekoliko AR platformi i standarda. Ista tehnička ograničenja koja utječu na industriju odražavaju se i u AR svijetu.

Na primjer, postoji nekoliko platformi, po jedna za svaki Big Tech (Google = ARCode, Apple = ARKit, MS = ChakraCore, Facebook = AR Studio, React 360, Mozilla = aframe).

Nakon kratkog pregleda mogućnosti, pokretanje potpuno proširenih projekata s proširenom JavaScript-om relativno je jednostavno. Možete započeti uzimajući bilo koji okvir za razvoj web / aplikacija, poput Cordove, Ionic, React Native ili Vue Native, kako biste ugradili AR okvir po svom izboru - i rasporedili 3D sredstva na vrh stvarnog svijeta.

Ako je ono što želite instalirati na webu koristeći AR koji se uglavnom temelji na markerima, možete koristiti repoziture GitHub poput AR.js (besplatno), argon.js (besplatno, ali ograničeno) ili awe.js (plaćeni PaaS, ali sa starim GitHubom spremište i dalje dostupno). Postoji nekoliko prilagođenih koji su teže za početnike, a mnogi su se usredotočili na stvari poput prepoznavanja lica / glave (kao što su tracking.js i headtrackr).

Ili možete poboljšati svoje projektne mogućnosti ako možete prenijeti dostupne SDK-ove proizvedene od tvrtki povezanih s AR-om. Postoje mnogi API-ji koji se u pregledniku prikazuju kao AR. Na primjer, Mapbox slijedi taj put i razvijen je na JavaScript-u.

Predložio bih vam da bude jednostavan, ali interaktivan.

Međutim, ako vaše ambicije upućuju na svladavanje dizajna i animacije u JavaScript-u, definitivno morate naučiti barem jedan 3D Javascript paket, a THREE.js najpopularniji. Pričekajte dok ne steknete dobru bazu JavaScripta i OpenGl-a, kao i geometrije, trigonometrije, linearne algebre ili fizike. I ne očekujte veću pomoć od postojećih 3D JS GUI; posebno THREE.js nema nijednu. Izazovno, ali uzbudljivo!

Primjer bonusa

Htio sam pripremiti brzu demonstraciju samo kako bih istražio tehnologiju, pa sam uzeo lijepi CodePen i preinačio ga tako da odgovara AR-animaciji koja se temelji na web-markeru, prebačenoj u klon sjajnog rada Stemkoskog s AR.js.

Da biste vidjeli primjer, potreban vam je mobilni uređaj s kamerom i internetom (telefon ili tablet) i ispisana kopija markera ili drugi uređaj koji će ga prikazati na zaslonu.

Spreman? Sada otvorite ovu vezu pomoću preglednika na svom mobilnom uređaju:

//evaristoc.github.io/ARexample/

Odobrite upotrebu fotoaparata i usmjerite kameru na marker kao dolje , tiskan ili na drugom zaslonu.

NAPOMENA: radi na Androidu i Chromeu - možda neće raditi na drugim uređajima i preglednicima?.

Sretna Nova godina!

Nadam se da će vam ova tehnologija biti fascinantna kao i meni. Ako je tako, nemojte ostati sami: kontaktirajte nas na forumu freeCodeCamp i podijelite svoja pitanja i ideje.

A ako vam se svidio ovaj članak, ne zaboravite ga dati? i da ga podijele na društvenim mrežama.

Hvala na čitanju, uživajte u AR-u i sretnom kodiranju !!