Pet savjeta za postavljanje i optimiziranje LEAP upravljačkog upravljača. Skok pokret - kako ga konfigurirati za radne igre

Kretanje kontrolera za PC / Mac

Jedan od najmodernijih tehničkih startupova prošle godine, koji je bio u prvih pet graničnih gadgeta časopisa, je kontrolor hvatanja pokreta kretanja kretanja. Prošlog ljeta, korisnici koji su podržali projekt Kickstarter počeli su primati dugo očekivani kontroleri. Vrijeme je da razmazuje ambicije i trezveno pogledate uređaj.

I iznad svega, strogo slijedeći izreku da je bolje vidjeti jednom, predlažemo da procjena radova skoka kretanja na videozapisu:

Oblikovati

U kutiji se knjižica i par mikro-USB kabela 3.0 nalazi s gadgetom. Jedan dug, za spajanje na sustav jedinice (samo manje od 1,5 m) i jedan kratki, pola metra, za prijenosno računalo.

Izgled samog kontrolera je jednostavan. Kroz gornju sjajnu površinu mogu se vidjeti dva infracrvena oči. Utor na bočnoj traci svijetli zeleno kada je uređaj uključen.

USB priključak je s lijeve strane. Iako komplet za isporuku sadrži treće verzije kabela, kontroler radi sjajno i drugo.

Donja površina pokreta je guma za poboljšanje kvačila sa stolom.

Uz dimenzije 80 × 30 × 11 mm, težina gadgeta je oko 50 g.

Upotreba

Počnimo s najjednostavnijom - kontrolom operativnog sustava. Preuzmite aplikaciju bez dodira putem preglednika (postoje verzije za Mac OS i Windows) i pokrenite ga pomoću leap pokretnog zračnog prostora.

Willless će se podsjetiti na ikonu u ladici. Upravljanje operativnim sustavom aktivira se kroz kontekstni izbornik.

Aplikacija vam omogućuje da primijenite osnovni skup gesta, identičnih onome na koji smo navikli na uređaje s dodirnim zaslonom. Indikator dodira na zaslonu je zelena šalica.

U načelu, ništa posebno neučivne ponude. Lijevi klik - s kratkoročnim pritiskom na virtualnu površinu, desno - s dugoročnim. Horizontalno i vertikalno pomicanje. Mijenjanje ljestvice s dva prsta jedne ili obje ruke. To, možda, sve.

Besplatno korisnički program bez daha preporučuje HP za upravljanje OS-om. Osim toga, još uvijek postoji desetak i pol istu primjenu u zasebnoj kategoriji. I u vrijeme ovog pisanja, dvije trećine njih su plaćene. Općenito, pokret za prijenos trgovine izgleda previše monetizirano za svoju razinu razvoja.

U postavkama gadgeta možete postaviti željenu visinu na koju će senzor čitati kretanje.

Osim toga, postoje tri opcije za instaliranje ravnoteže između brzine i točnosti prerade geste. Skup postavki, kao što možete vidjeti, je mali, ali dobro je da proizvođač omogućuje barem nešto za promjenu.

zaključci

Od trenutka slanja prvih uzoraka prijejavnog prijejasa za više od godinu dana. Unatoč prikladnom fakturu oblika i zanimljivog koncepta, dugoročno, novi kontroler još nije opravdani nade dodijeljeni i unovči mnogo brže od razvoja. Besplatne prijave nude uglavnom osnovnu funkcionalnost i rijetko kao tvrdnja da je više od banalne demonstracije sposobnosti kontrolera. Store ima nadgrađe za profesionalne alate, Photoshop i Autodesk Maya, ali to je zanemarivo. U sadašnjem stanju "gadgeta u sebi" skok pokret vjerojatno će voljeti samo znatiželjne entuzijaste, koji se prvi, prije svega, igraju s gadgetom. I nadamo se da će programeri ne sagorijevati prihode od Kickstartera na malom tropskom otoku, a partnerstvo s velikim tvrtkama kao što je HP će biti korisno za sve zainteresirane strane.

Leap Regulator pokreta ušao je u prvih deset uređaja u časopisu Time. Ovaj uređaj pripada slavnoj obitelji novih generacija bežičnih kontrolera, kao što je Wii daljinski, playstation potez, ali njegov najbliži rođak je Xbox Kinect. Za razliku od potonjeg, skok pokret reagira na kretanje iznimno ruku, to je 200 puta točnije određuje čak i najbrže kretanje četkica i prstiju. Ovaj uređaj nas još više kiša na ovu virtualnu stvarnost - stvaranju prirodnog sučelja između osobe i uređaja. Ura, drugovi!

Kontroler pokreta

Nakon objavljivanja kinect senzora, na valu su se počeli pojavljivati \u200b\u200bi drugi uređaji za beskontaktne kontrole. Kinect je služio kao osnova za rast i razvoj tržišta takvih uređaja: ulagači su vidjeli budućnost i razumjeli značenje ulaganja sredstava u uređaj za kontrolu gesta. Međutim, kontroler kontrolera LEAP pokreta postao je najznačajniji i najznačajniji. Kao i progenitor, potonji se temelji na tehnologiji tehnologije za hvatanje. Ovaj uređaj je spojen na USB priključak i veličine ne prelazi par presavijenih flash diskova. S tehničke strane za snimanje projekcije prilagođene ruke u prostoru, LEAP uređaj koristi dva optička senzora (fotoaparati) i infracrveni izvor svjetla (programeri ne isključuju da u budućim verzijama uređaja može se mijenjati broj kamera). Uređaj je postavljen radna površina gore pored zaslona kako bi se stvorio osjećaj da se objekti na zaslonu kontroliraju ručno. Nakon priključivanja uređaja iznad njega, formira se virtualna inverzna piramida s središnjim vrhom u uređaju. Najučinkovitiji raspon proteže se od 25 do 600 mm iznad regulatora s poljem vidljivosti od 150 stupnjeva. U području ove piramide, skok pokret "vidi" sve pokrete i prosljeđuje njihov softver koji pretvara podatke i signale na koordinate i poruke. Softver je u mogućnosti prepoznati i jednostavne geste (virtualni dodir, pritiskati) i složene kontinuirane pokrete: skaliranje, kretanje, rotacija, crtanje različitih geometrijskih oblika. Dakle, sama uređaj ne izvodi bilo kakve izračune i transformacije, dajući sve host softver na rupu, koji, uklanjanju buku slike, gradi modele ruku i prstiju - pokazivači. Imajući podrijetlo u središtu uređaja, leap uređaj interpretira koordinatne osi kako slijedi: negativni X nalazi se lijevo od uređaja, odnosno pozitivno na desnoj strani. Y koordinata raste i nema negativne vrijednosti, jer skok "vidi" objekte počevši od 25 mm iznad sebe. Pozitivan z nalazi se prema korisniku, dok je negativan na zaslonu.

Leap Motion SDK.

LEAP Motion SDK razvija iznenađujuće nasilno, a nove verzije se preklapaju s zavidnom pravilnošću: za relativno kratku povijest svog postojanja, već se pojavila potpuna druga verzija Tulza, kao i njegove izmjene. Točnije, moda je još uvijek u fazi beta, a mi ćemo koristiti najnovije u vrijeme pisanja članka verzije SDK, budući da svaka nova verzija pruža vidljiva poboljšanja - dodatne značajke za praćenje kostura ("Bones" ruke ). Kao što se i očekivalo, LEAP Motion SDK radi na svim uobičajenim platformama: Windows NT, OS X, Linux. Od nedavno, moram više raditi na makom (i mogu urediti ovaj članak na EEE PC-u s Win XP, i ja normalno. - Ed. Ed.), U budućnosti ću se odnositi na moju priču (s nekim rezervacijama) ovaj operativni sustav. Ako niste prijatelji s njom, ne očajavajte, jer skok pokreta SDK cross-platforma, a možete jednostavno prilagoditi informacije primljene iz ovog članka za bilo koji podržani operativni sustav.

Spreman!

Za početak rada s Easp Motion Controller, nakon registracije na web stranici proizvođača uređaja, iz odjeljka za preuzimanje, preuzmite Arhiv LeapdeveloPerkit_2.1.1 + 21671_Mac.tar. Povezivanjem ga naći ćete mapu u kojoj će biti lap_motion_installer_Skeleton-relia_public_mac_x64_public_public_mac_x64_2.1.1 + 21671_AH1704.dmg (slika diska za OS X) koji sadrže upravljačke programe za uređaj, kao i demoappikacije. Uz paket bit će Easpdk direktorij, koji uključuje sve potrebne knjižnice i API-ja za razvoj aplikacija koje rade s pokretnim uređajem. Osim toga, ova mapa sadrži dokumentaciju i uzorke. Osim demode, Bandle sadrži dom zračnog prostora, a neku vrstu klijenta za prijenos leap Motion Application Store - možete preuzeti svoje aplikacije na njega i prodavati ih, kao i na drugim digitalnim mjestima distribucije. Glavna razlika druge verzije SDK-a od prvog je novi sustav praćenja "skeletona" gornjih udova. Uključuje obradu dodatnih informacija o kostima i prstima, mogućnost predviđanja mjesta nevidljivih kostiju za uređaj i izgradnju modela ruku u tim uvjetima kada su potpuno udovi nisu vidljivi.

Prvo instalirajte sadržaj Bandle (sigurni, u sustavu Windows Ima isto ime, samo s Exte). Sam instalacijski program je unutar slike se zove LEAP Motion.pkg, pokreće proces instalacije sve navedene gore.


Sl. 2. Instaliranje programa

Nakon što je instalacija dovršena za pokret skok, upravljački program će automatski pokrenuti, koji je u obliku demona "set" u traci izbornika (desno gore). U "programima" bit će tri nove aplikacije: samog vozača, demoprogram usmjeravanja pokreta (preporučujem početak od njega) i zračnog prostora. Ako je kontroler prethodno bio povezan, vrijeme je da to učinite. Ikona (u traci izbornika) označena je zelenom. Kao rezultat klikanja, otvorit će se izbornik koji sadrži pet bodova. Prva stavka lansiranja zračnog prostora počinje isti prozor klijent. Prema zadanim postavkama postoji sedam deforta i dvije linkove koji vode do skladištenja zračnog prostora i zajednice za razvojne programere. Svaka od demonstracija otkriva mogućnosti pokreta skoka.

Sljedeća stavka izbornika - postavke otvaraju prozor za konfiguriranje uređaja. Ovaj prozor uključuje četiri kartice. Generals stranica proizvodi osnovne postavke: omogućuju ili odbijaju uređaj za interakciju s web aplikacijama koje podržavaju pokret skok (proći naprijed, primijetit ću da je ova značajka prisutna, a za ovu uporabu HTML5 + JavaScript), omogućite ili onemogućite mogućnost primanjenja signali iz aplikacija uređaja koji rade u pozadini, automatski prenose statistiku uređaja, omogućuju (ako je potrebno) za prijelaz na način uštede energije; postavite najmanju visinu iznad uređaja na kojoj "vidi" ruke i prste (pokazivači); Pristati na automatsko ažuriranje. Stranica za praćenje sadrži dva parametra vezana uz konfiguraciju uređaja "Praćenje". Sljedeća kartica je posvećena dijagnosticiranju i rješavanju problema, postoje funkcije za pregled dnevnika softvera, dijagnostički vizualizator, rekalkulaciju uređaja i povratak na zadane postavke. Potonja kartica jednostavno govori informacije o uređaju i softveru za servisiranje. Kliknite na stavku vizualizatora otvara demonstrator, možete vidjeti kako uređaj "vidi" udovi. To jest, ako premjestite ruke preko aktivnog područja uređaja, aplikacija će ih prikazati u virtualnom prostoru. Tipka za praćenje pauze obustavlja praćenje, prilično - smanjuje demona.


Kada je instaliran softver za pokret, možete staviti alate za razvojne programere. U isto vrijeme, vjerujem da ste instalirali najnovije verzije operativnog sustava i alat za razvoj (Xcode). Kao što sam rekao gore, nakon raspakiranja arhive, mapa s SDK nalazi se pored instalacijskog Bandl. Ova mapa sadrži dokumentaciju, primjere, zaglavlje i objektne datoteke za sve službeno podržane jezike. U početku, LEAP Motion SDK je napisan u C ++, ali, zahvaljujući Swig, ima podršku mnogih uobičajenih sastavljenih i interpretiranih jezika, uključujući C # (zajedno s okvirnim okvirom .NET-om i mono plus jedinstvom 3D motor), cilj -C, Java, Python, JavaScript. Swig, biti besplatan open source alat, igra ulogu generatora BINDING koda između C ++ i drugih jezika. Za vaše razvoj, uzimamo c ++ kao najtojniji. Klijentsko računalo i kontrolor u interakciji preko TCP veze, koji otvara portove 6437, 6438, 6439 - za ispravan rad uređaja, morate pratiti tako da ih vatrozid ne blokiraju. LEAP Motion SDK omogućuje vam razvoj aplikacija od dvije vrste: Podrška automatskog sučelja (klijentske aplikacije) i sučelje web-mjesta (web aplikacije koje se izvode u okruženju preglednika). Prvi za rad (dobiti podatke iz kontrolera) Koristite dinamičku knjižnicu - specifičan operativni sustav za određeni operativni sustav, povezuje se s uređajem i pruža uslugu najviše razine. Dok drugi primaju podatke putem poslužitelja lokalnih web stranica kao JSON formata. U tom slučaju, JavaScript + Open Source koristi Add-in ExapJS, a za kontrolu uređaja, aplikacija može prenositi konfiguracijske poruke putem poslužitelja web-mjesta natrag na uređaj.

Kodiranje za skok

Danas ćemo se usredotočiti na native aplikacije za OS X, ali zahvaljujući alatu za cross-platformu možete jednostavno remake našim programima za drugi podržani operativni sustav. Nećemo razviti primjenu konzole koja prikazuje koordinate koje se prenose kontroler, to je dosadno. Odmah uronite glavu u ozbiljan kod i napišite aplikaciju koja prikazuje grafički prikaz.

Vizualizacija

Leap Motion SDK pruža prekrasne alate za dobivanje podataka iz kontrolera, ali uopće nema ništa za izlaz grafike. Stoga naš put leži kroz korištenje dodatnog alata. Za prikaz grafike iz izvornog zahtjeva pod OS X, morate koristiti OpenGL. Iz te ideje čini tugu: prenizak, nijedan članak nije dovoljno, i općenito možete spavati. Stoga ćemo koristiti postavke preko OpenGL. Od najšireg raspona takvih knjižnica izabrao sam kiper. Ciper je skup otvorenih jedinica knjižnice za obradu slike, rad s grafikom, zvukom, računalnom geometrijom. Kao što sam rekao gore, kinder cross-platforma, a isti kod će raditi ne samo na radnim površinama, već i na pametnim telefonima i tabletama Apple. U budućnosti će programeri proširiti krug podržanih hardverskih i softverskih platformi. Osim stvaranja obratka novog projekta u isporuci pepeo, Tinderbox uslužni program uključuje projekt s OpenGL, DirectX, Cocoaview (OpenGL) podršku, svaka od ovih gredica može sadržavati kutiju 2D fizičku podršku za fizičku motor, biblioteku Cairo Rendering , FMOD Audibular, Computer View Knjižnica Opencv. Za Apple uređaje možete generirati radni komad u kojem će se koristiti menadžeri geolokacije i pokreta koristeći standardne okvire (jezgra lokacije, kretanje jezgri). Sve to može lako biti uključeno u projekt u fazi njegovog stvaranja pomoću GUI sučelja. Osim toga, projekt se može generirati u okviru određenog programskog okruženja i operativnog okruženja: Xcode (Mac), Xcode (iOS), VC 12/13 (Winrt). COREALY: Imamo više od API knjižnice, sve to podsjeća na cross-platform gaming motor! Također možete odmah stvoriti lokalni repozitorij git. U mom skromnom mišljenju, pepeo će uskoro postati najbolja cross-platforma rješenje, čak iu usporedbi s qt. Budući da se pojačanja aktivno koristi u cilju, nije loše ga ažurirati na najnoviju verziju. Otvorite svoju omiljenu konzolu i najprije stavite sustav upravljanja (na strogi izgled Apple) Homebrew paketi:

Ruby -e "$ (curl -fssl https://raw.githet.com/homebrew/homebrew/go/install)"

Nakon toga instalirajte Boost 1.55: Brew instalirati potaknuti iz ovog sustava. Raditi izravno s pepeo, dovoljno je preuzeti i raspakirati, ali za generiranje projekta - za korištenje alata za tinderbox postavljene u podmapi.

Ruke, prste, upravljanje prostorom

Dakle, za vježbanje stvorite aplikaciju koja prikazuje prozor koji vidi senzor. Ako čitate moje članke o Kinect, možete se sjetiti da smo počeli na isti način, smatrat ćemo ga tradicijom. Provratni komad iz TinperBoxa za OpenGL će biti savršen za nas, samo trebate dodati pokret skok. Da biste to učinili, od poddirektorije prethodno raspakirane mape (vidi gore) u Xcode projektu imenik imenika utikača stabala, dvije datoteke: LEAP.H i LEAPMATH.H. Kada je prijenos dovršen, pojavljuje se dijaloški okvir, gdje želite odrediti metodu umetanja / obveznica datoteka s projektom; Postavite odredišni potvrdni okvir -\u003e Kopiranje stavki ITO odredišna grupa mapa (ako je potrebno), provjerite mape -\u003e Stvaranje grupa za bilo koje dodane mape i dolje za bilježenje projekta na koji se dodaju datoteke. Osim toga, još uvijek trebate dinamičku knjižnicu. Budući da C + + jezični kompajler (LLVM), koji je uključen u XCODE, slijedi C ++ 11 standard, onda morate koristiti knjižnicu sastavljenu s njegovom intervencijom. Takva libe je, to se zove (verzija za OS X) libleap.dylib i nalazi se u podlozi za libc ++ libsdk direktorija. Lubu se također treba preseliti u Xcode sustav, s istim naknadnim prolazom dijaloga. Sada trebate odrediti Xcode okruženje da koristite lubaju dodanu projektu. U stablu stabla projekta / direktorija kliknite na naziv projekta (gornja stavka), otvorit će se izbornik za konfiguraciju projekta. Idite na karticu Graditi Faze. U gornjem lijevom kutu jezičaca klikom na znak "Plus", odaberite Nova Cope datoteke Izgradite fazu iz kontekstnog izbornika. Na dnu kartice pojavit će se preklopna ploča za kopiranje. Uključivanjem je, s padajućeg popisa odredišta odaberite Izvrsni, i na prazan popis datoteka (u nastavku) iz stabla projekta, povucite dinamičku libu, dok se kopija samo prilikom instaliranja potvrdnog okvira mora ukloniti. Sada je spojen na projekt. Sljedeća radnja potrebna je da senzor prenose "sirove" podatke slike koju on vidi; U postavkama LEAP Motion (postavke postavki ikone uređaja u traci izbornika) na kartici Općenito morate najprije obavijestiti potvrdni okvir Dopusti Slike. Tinderbox generirani lilter uključuje nekoliko mapa, datoteka i potrebnih okvira. Kao što sam nazvao Rajuimagepp projekt, dodao sam zaglavlje Datoteka Rarimages.h. U njemu sam smjestio priključak datoteka za pepeo i skok za zaglavlje, uključivši skok imena i deklaraciju o samim predmetima pokretačkog upravljača, to je središnji predmet rasprave. Osim toga, Tinderbox je generirao izvorni kod za naš projekt, služit će kao dobra polazna točka za razvoj. CPP datoteka sadrži primarnu klasu (u mojim slučajevima ParuimageApp) aplikacije koje odgovaraju nazivu projekta i naslijeđenim od osnovne klase Klinga. Prozor se stvara pomoću ciper_app_native makro. U rarimageapp razredu, virtualne funkcije osnovne klase su proglašene i implementirane. Funkcija postavljanja naziva se kada aplikacija počne, kod se ovdje nalazi za inicijalizaciju: Za prikaz "RAW" grafičkih podataka u ovoj metodi, morate instalirati zastava posebne politike senzora za koju morate nazvati metodu setpoliciflag u koje se mora nazvati kontroler politike_image. Funkcija ažuriranja naziva se u svakom okviru za ažuriranje; Draw se zove za crtanje sadržaja; Mousedown - kada pritisnete gumb miša. Prema zadanim postavkama, nisu sve moguće funkcije uključene, na primjer, dodajte pripreme - funkciju koja se zove prije stvaranja prozora i omogućuje vam prijenos parametara na njega. Dodajte ovu značajku da biste stvorili veći prozor prilikom izrade prozora, također postavite frekvenciju ažuriranja. Obavijest unutar raruimagepp klase izgleda ovako:

Void pripremni (CI :: App :: AppBasic :: Postavke * Postavke);

i provedba je takva:

Void RarimageApp :: pripremni (postavke-\u003e SetwindowsIZize (1024, 768); postavke-\u003e SetFramerate (60.0f);)

Siguran sam da su komentari ovdje suvišni. Dodajte OpenGL teksturu na primarnu primjenu klase: GL :: Texture Tex; To će biti handy za nas za izlaz. U funkciji ažuriranja primit ćemo slike iz senzora pomoću okvira, a zatim ih obraditi i prikazati na teksturi (vidi izvor koda). Na svakom okviru dobivamo okvir kontrolera: okvir okvira \u003d kontroler.Frame (); Objekt okvira klase sadrži sve ostale objekte koji generiraju informacije o kontroleru. Samo ih trebamo izvući iz njega. Usput, dobivanje okvira na ovaj način - da ga preuzmete s kontrolera (serijski pregled uređaja) je najčešće i najčešće koristi. Bilo koji posredni trenutci su unaprijed određeni: ako je sljedeći anketi, novi okvir još nije spreman, onda se stara vraća; Ako je sljedeća anketa spremna za nekoliko okvira, oni se stavljaju u povijest. Postoji još jedan način primanja okvira, ali dok ga ne trebamo, a mi ćemo odgoditi njegovo razmatranje na sljedećem odjeljku. Nakon što ste dobili okvir, uklanjamo senzor slike iz njega: Imagelist Images \u003d Frame.Images (); Postoje samo dva od njih, jer u senzoru postoje dvije kamere, tako da su dvije slike u svakom trenutku. Zatim, dosljedno obrađujemo oboje. Prvi u redu: const nepotpisani char * slika_buffer \u003d image.data (); Primamo te slike; U određenom trenutku možemo dobiti različite slike iz kontrolera - ne samo po sadržaju, već i veličini. Sljedeća linija stvara grafički površinski objekt (površinu), koji je uključen u pepeo API. Njezin konstruktor se prenosi četiri parametra: širina i visina površine, upotreba alfa kanala, sekvencu kanala boja (Surfacechannel :: RGBA konstanta u skladu sa standardom: crvena, zelena, plava, alfa, ali postoje Broj drugih, na primjer, u GDI ili Quartz druge boje koriste se u GDI ili kvarcni slijed). Zatim, uz pomoć iteratora, svi pikseli (sve dok je prazna) površina je ugnije. Unutar ovog ciklusa je instalirana boja piksela. Odlučio sam dati odgođenu sliku crvenkastu nijansu (kao u propasti :)). Stoga je za crveni kanal svakog piksela postavljen vrijednost koja odgovara vrijednosti s slikovnih podataka. Preostali kanali se resetiraju. Nakon cijele slike konstruiramo objekt - tekstura pomoću metode teksture GL :: Tekstura na temelju površinskog parametra. Ako sada prikažite teksturu na zaslonu, bit će premala. Stoga ga pred iscrpljuju: GlScalef (2.0, 3.0, 0.0);. Sada prikazuje: Gl :: Nacrtaj (Tex);

Sl. 5. Što vidi skok kontroler pokreta

Kosti

U sljedećem primjeru, mi ćemo pokazati naše ruke u strojnom kontekstu, odnosno nacrtati ih u relevantne koordinate. Ovaj će zadatak biti teže od prethodnog, a Leappdk još uvijek pruža prilično nisku razinu sučelje, tako da pojednostavimo naš zadatak koristimo gotove kretanja. Američki programer Stephen Schibeberla (Stephen Schieberl), pod nadimkom zabranom premotavanja, razvio je nekoliko nastave (slušatelj je naslijeđen od skoka :: slušatelja i uređaja) koji obavljaju sve tipične rad u vezi s obradom i povratom statusa uređaja. Osim toga, Stephen je stavio funkciju na funkciju, koja obavlja koordinate i matrice, što će nam omogućiti da se usredotočite na rad na višoj razini. Prije svega, ovi izračuni povezani su s činjenicom da, za razliku od koordinata radne tablice operativnog sustava, gdje Y osi raste od vrha do dna, podrijetlo koordinate za pokret (0, 0, 0) Počinje u donjem lijevom kutu (y raste od dna prema gore), a time, kada koristite y koordinatne vrijednosti, moraju biti obrnuti. Dodatni izračuni se provode iznad vektora i matrica, kao što je gore navedeno. Dakle, stvorite novi projekt na isti način kao i prošlost. Osim toga, dodajte ga cipentu-leapmotion.h i kivrčama-Leapmotion.cpp (vidi materijale za članak). U glavnoj klasi prijave, dodani su broj varijabli članica: MDEVICE - Link na uređaj - objekt klase samoprocjene, okvir MFrame - klase (već smo razmotrili ovaj razred u Prošlog odjeljka), McAmera - Kamerapersp klasa objekt Cilj cindara također se dodaje metoda na okrilju (class-call funkcija), koji, uzimajući objekt klase okvira, čini ga trenutnim - dodjeljuje ga član MFrame. Metoda postavljanja uključuje crtanje, zaglađivanje linija i poligona; Inicijalizacija fotoaparata: Pitanje područja vidljivosti (u dizajnerskim parametrima), postavite točku gledanja (u metodi prikaza); Zatim se stvara objekt samoprovodnog uređaja klase, koji uključuje tri potrebna objekt objekta: kontroler, uređaj (iz skok imena) i slušatelja, osim toga, bez mutuxa ne učiniti. Tako smo se približili drugoj metodi primanja okvira od uređaja - slušajući. Naša klasa uređaja naslijeđena je od klase slušatelja, što vam omogućuje da ostvarimo ovu priliku, to jest, primamo okvire od kontrolera s frekvencijom koja odgovara njegovom radu. Kada je kontroler spreman za prijenos okvira, klasa slušatelja poziva na način na koji nas je nadjačao i prenosi u okvir (u parametru), spomenuli smo ovu metodu gore. Usput, zašto smo trebali mutex? Činjenica je da kada koristite slušanje - funkcije povratnog poziva - onframe se zove u multithreaded modu. To jest, svaki poziv se provodi u samostalnom potoku. Stoga, moramo se pobrinuti za sigurnosni protok u trenutku primitka okvira s uređaja, koji se poslužuje mutex. Kada slušate, također možete ignorirati dolazak novog okvira (na primjer, ako prethodni okvir još nije obrađen) i dodati je u povijest (za naknadnu obradu). Povratak na naš kôd, na mjesto stvaranja objekta našeg uređaja klase. Nakon stvaranja značajka povratnog poziva je instalirana za to.

Percein

No, najzanimljivije se pojavljuje u izopačenoj metodi. Pripremne akcije se prvo izvodi: čišćenje zaslona, \u200b\u200bpostavljanje trenutnih matrica za fotoaparat, uključite alfa miješanje, čitanje i pisanje na dubinski međuspremnik, postavljanje boje za crtanje. Zatim počinje izravni crtež: dobivamo iz uređaja trodimenzionalni vektori lakatskog položaja i zapešća i GL :: Metoda pojmova za crtanje između tih točaka. Zatim dobivamo količinu prstiju i u ciklusu koristeći iterator kroz kontejner koji ih sadrži. U pokretu skok, svaki se prst sastoji od četiri dijela (falange): periferni, međuprodukt, proksimalni i metalik. Iako je posljednji falanx odsutan na palac ove ljudske ruke, ovdje je, ali ima nultu vrijednost. U priloženom ciklusu, zaobilazeći sve falange, dobivamo koordinate njihovih različitih dijelova: početak, središte, kraj, smjer. Koordinate su prikazane u obliku vektora (Vec3F). Također unutar ove podružnice, falange je izvučen pomoću metode pojmove na koju se prenose pronađene koordinate. Osim toga, prvi falange formira kontejner za zglob (zglobove). Kada vanjski ciklus izlazi, crtaju se linije koje spajaju prste i oblikovane ručne četke. Na to, zabava crtanja završava. Spojnica i pokrenite program, odgodite ruke iznad senzora, a obrisi vaših udova će se pojaviti u prozoru.

Rezultati

Leap Motion je revolucionarni regulator, ne samo da je zamijenio zaslon osjetljiv na dodir, već nam je i dao svemirsko upravljanje tako što ćete napraviti još transparentniju granicu između stvarnog svijeta i virtualne stvarnosti. Na razini programera dobivamo prikladno softversko sučelje koje vam omogućuje upravljanje svim mogućnostima senzora. Cross-Platform Developer Alati daju zadnji pristup uređaju na različitim programskim jezicima, i sastavljenom i interpretiranom (dok je među posljednjim dva - Python i Javascript). Osim toga, API ima vitku i razumljivu strukturu: U svakom trenutku kontrolor uklanja sliku, generira se na temelju svog okvira i šalje na najvišu razinu - na program aplikacija gdje programer, razbijanje okvira, Radi s takvim entitetima, poput ruku, prstima, pokazivačima (alati) i još mnogo toga. Zbog prisutnosti u uređaju dvije kamere, često se montira na virtualne stvarnosti naočale za stvaranje učinkovitog učinka stvaranja stvarnosti, što se postiže zbog prisutnosti u slikama koje uzimaju komore, izmjerene infracrvene vrijednosti radijatora, kao i podatke o umjeravanju potrebno za ispravljanje složene leće. U današnjem članku podigli smo temu stvaranja primijenjenih rješenja koja komunicira s uređajem putem API-ja. Ova tema je vrlo opsežna i nije bilo moguće razmotriti sve - gestikulaciju, posebne pokrete, emulaciju dodira i još mnogo toga ostali su iza tema. Sve to, kao i još mnogo toga, na primjer, koristeći kontroler u sustavu Windows i web, integracija s igrama / grafičkim motorima može biti tema za razgovor u najbližim člancima. Sve ovisi o vama - pišite nam, zahtijevaju nastavak :). U međuvremenu - sretno u svim pitanjima na sastanku na stranicama "Hacker"!

Cijena pitanja- 4990 rubalja.

Sadržaj isporuke - Sam uređaj, 2 USB kabel.

Uživao je u pogledu.

Kad sam prvi put pokupio kutiju s predstavljenim Pokret.Ista misao smještena u glavi - što je to, prokletstvo, je li? Od dijaloga polugodišnjeg ograničenja s raspravom o ovoj novost elektroničkog tržišta, umanjen je iz sjećanja, a upute na ruskom nije bila vezana, bilo je potrebno popeti se na pomoć u Googleu, koja me je izdala sljedeće. :)

U teoriji. U praksi, naravno, sve je nešto drugačije. :)

Sam uređaj izgleda o istom načinu kao i na slici, iako su dimenzije nešto veće: 8 cm dužine i 3 širine. Zbog gumirane obloge, trebalo bi postojati stajati na stolu, iako osobno ga uvijek leti donekle :) to je povezano s računalom putem USB-USB 3.0 kabela, ona je instalirana između monitora i tipkovnice i dobro radi Windows 7.

Mnogi pišu o nekim posebnim testovima pri spajanju uređaja, ali nisam imao ništa slično, osim za registraciju u zračnom prostoru LEAP pokreta, ali o tome odmah ispod.

Leap Motion - softver.

Nakon što je sustav identificirao strani uređaj i sretno je obavijestio da je spreman za rad, svečano sam mahnuo rukom ispred monitora, i .. čudo se nije dogodilo. :)

Morao sam se popeti na https://ieirespace.Leapmotion.com/ i skinuti skok motiv zračni prostor od tamo - program koji predstavlja tipičnu uslugu distribucije usluga i drugi softver stvoren za ovaj uređaj.

Preuzela sam, postavio, otišao u registriranje, instalirao softver, počeo testirati. Prva orijentacija programa, pokazuje najspektakularnije značajke prijetnje skok. Bilo je vrlo neobično vidjeti naše vlastite gornje udove na ovaj način:

Nadalje odabrati - u zračnom prostoru, nalaze se igre, programi za stvaranje raznih objekata, crtanje, kreatore glazbe i drugih, bez manje zanimljivih stvari. Naravno, mnogo plaćenih, ali među slobodnim je nešto igrati.

Možda je ovdje najneugodnije otkriće podjela softvera za Mac i Windows, tako da neki programi imaju "netočan" sustav, samo za lizanje.

Da biste to učinili, idite na odjeljak Kontrole računala. I download tamo Neuredan - za mak i prozore.

Leap Motion - Prilagodba za normalan rad.

Onda počinje najzanimljivije. :) U početku, kako bi barem dobili ikonu na radnoj površini, trebalo mi je oko 5. Bilo je to kao osjećaj koji se dogodio tijekom prve uporabe računala - sve je zastrašujuće, klikove i ne radi. :) Dakle, u određenoj fazi bundeve na ekranu, zbunjenost je počela zamijeniti razočaranje.

A onda je razumijevanje onoga što bi bilo lijepo popeti se u postavke, ako ih ima. Postavke pronađene u području obavijesti i bili su kompaktna ikona "Geste" , Kliknite na to desnom tipku miša (oh, kakav blaženstvo kada sve radi odmah i kako je to potrebno) i odabrati Otvorite upravljačku ploču "Gesta".

U prozoru koji se otvara Geste izložba točna olovka i osjetljivost na dodir.Zatim idite na karticu Parametri olovke, Odaberite liniju Dvokliknite dvostruki klik i kliknite Parametri.

U novom klizaču prozora Ubrzati i Udaljenost premjestiti na put do druge više I testirajte rezultat u malom prozoru s vratima. Ako je sve učinjeno ispravno i već ste se prilagodili dvostrukim dodirivanjem - vrata će se otvoriti. Isti se postupak vrši na kartici Dodir.

Neobičan gadget - skok pokret, koji je bio zastupljen prošle godine i donio nam je mnogo buke u Keddrofis. Njegovi su kreatori ozbiljno bili usmjereni na razmišljanje o upravljanju sučeljem, glavni cilj je zamijeniti miš. Nisam siguran da će sve biti tako, ali držite ruke na stolu prikladnije, i stalno ih mašete brzo se umorite. No, neki će zadaci biti prikladniji za obavljanje sličnog senzora. Na primjer, igre, jer za sve vrste arkada i timekillers, s kojima se možete opustiti i zaboraviti na rad minuta za 20 minuta, skok pokret je savršen.

Kako to radi? Ukratko, određena kocka se formira ispred uređaja, sa strane od 60 cm, u kojoj se pokreti vaših prstiju prepoznaju s velikom točnošću. Već, skok pokret prepoznaje svih 10 prstiju, a točnost njihovog kretanja putuje u djelić milimetra. Kašnjenje je također minimalno. No, događa se događa i, za sada, često. Na primjer, čak iu demo aplikaciji, prsti nestaju ako ih kreću i rotiraju. A ponekad se čini da je prst slomljen. Ipak, već sada rade je dobro iu aplikacijama, prema vrsti rezanja uže, gdje je uključen samo jedan prst, zaostaji su rijetko. Ali Google Earth, nisam mogao ukrotiti i nisam ukrotio, Zemlja se okreće u mojim rukama, a onda se odmah ispostavim da je pod vodom. I tako cijelo vrijeme.

Leap Motion nije samo komad vina, to je cijeli ekosustav. Bilo bi besmisleno ako se pokret skok može pohvaliti samo demo Ne, programeri su stvorili neku vrstu čvorišta za računala (MAC i PC) - zračni prostor. Ovdje vidite sve što je već preuzelo / kupilo. Tu je i web-bazirana aplikacija - airpace Store. Ovdje morate se registrirati, nakon čega možete početi kupovati. U osnovi, aplikacije se plaćaju, postoje kategorije, postoje dijelovi samo za Mac i samo za Windows. Nakon kupnje aplikacije ili igre, možete pronaći kupnju u čvorištu, odazva se preuzimanje. Ako se prijavite na drugo računalo, sve kupnje su sinkronizirane.

Sam pokret je kompaktan okvir, veličina 128-GB USB flash pogona. Slučaj je izrađen od aluminijskih, stakla i gumiranih dna, koji ne dopušta uređaj da friken na stolu. Leap Motion računalo je spojeno na USB kabel, sličan onima za vanjske 2,5 "tvrde diskove. Uključeno je 2 takva kablova, jedan duljini metar, još dvostruko kraće. Nakon spajanja LM na računalo, sve što će biti učinjeno je instalirati aplikaciju koja se može preuzeti na web-lokaciji i registrirati svoj uređaj.

Do sada, to je ništa drugo nego igračka. Jedina korisna aplikacija koju sam uspio pronaći je da je za Mac, okrećući LM na trackpad. Ali da ga koristim, opet, vrlo teško. Čak bih rekao - nestvarno. Do sada, skok pokret je samo zabava za prijatelje, pokazujući mogućnosti s demo aplikacijama i igrama. Ali u isto vrijeme je prvi korak u budućnosti. Mislim, za dvije godine moći ćemo vidjeti takav uređaj koji nije u jednom laptopu.

Sjećam se kako sam prošle godine vidio i nisam vjerovao da to nije prototip, već potpuno popunjen proizvod, oslobađanje od kojih će se održati šest mjeseci. Nekako je previše fantastičan izgledao je sliku koju je pokazao developer, gurajući misli o filmu "Posebno mišljenje". No, čudo se nije dogodilo, a na početku je bilo preneseno datum objavljivanja, a zatim. Ali što je najvažnije, kako kažu, rezultat, i to je vrlo i vrlo dobro. Zašto nema loše - ovo je prava nevjerojatna stvar koju ću reći o ovom članku.

Koncept

Ideja pokreta skoka je učiniti upravljanje sučeljem intuitivnim. I to nije važno - bilo da radite u operativnom sustavu ili igrajte igru. A što bi mogle biti intuitivne geste? Sjeti se kako je nejasan Tom Cruz radio s bazom podataka Agencije u filmu "Posebno mišljenje":

Impresivan, zar ne? Tako je lako juriti podatke na zaslonu, kombinirati u odvojene klastere, u usporedbi. S tipkovnicom i mišem, morali bi biti naslikani nekoliko puta duže.

« Ali ovo je stvar daleke budućnosti i općenito, fikciju znanosti!"," Ti kažeš. " I osvrnite se natrag - većina tehnologija u suvremenom svijetu izašla je iz bajki i fantastičnih djela: kreće se kroz zrak na veliku brzinu, priključak na daljini koristeći minijaturni uređaj, koji je snažno računalo, lako postavljeno u dlan Ruke, internet ... Primjeri mogu biti uzrokovani masom.

Ovdje i pokret skok postao je neka vrsta inkarnacije u stvarnosti sna Philip kuracpisanje romana " Posebno mišljenje"Još u 1956:

Impresivno je ne manje od epizode prikazanog iznad filma. I znate, ova stvar stvarno radi! Nisu bili tako glatki, jer se pokazuje u videu, ali se osjećaju od radova s \u200b\u200bpokretnim pokretom teško prenijeti teško, iako ću pokušati to učiniti.

Mali uređaj u velikoj kutiji

S obzirom na veličinu kontrolera, a ne posebno prelazi one u upaljačima, dolazi u takvom veliku kutiju, iako će se lako uklopiti u dlan. Općenito, pakiranje je cool:

Od iznad superobrika, ispod njega kutija vrlo čvrsta i kvalitetna kartona. RIM niz poklopac, a vi ste pozvani da uronite u potpuno novi svijet:

I ovdje je junak pregleda, slobodno se nalazi u plastičnoj kupki:

Osim njega, još uvijek postoji par kabela i mala nastava:

Usput, obratite pozornost na kabeli, Duljina od jednog - 60 cm, drugi - 150 cm, ali je zanimljivije konektor:

Ovo nije vlasnički priključak, ali standard microusb 3.0, Ali, iskreno, nisam razumio zašto je to koristiti ovu opciju ako sama uređaj radi putem USB 2.0. Barem je to navedeno na službenoj internetskoj stranici. Uobičajeni mikrousoni priključak i kompaktni, a odgovarajući kabel je lakši ako će potpuna doći u zapuštenost.

Pa, u redu, što imamo, onda imamo. Pogledajmo više oprezno.

Skok kretanje iako mali, ali težak i čvrsto oboren. Kontroler se vrši u kućištu od aluminija s sjajnom plastičnom ploču odozgo i gume - odozdo:

Pribor je savršeno sastavljen - Monolith: ne škripa, a ne ljevak, ništa ne brine. Volio sam rješenje s gumenom dnu - zbog toga, gadget pouzdano stoji gotovo na bilo kojoj glatkoj površini.

Od dodatnih stavki na slučaju postoji samo priključak Microuzeb i pokazatelj statusa:

Momoving se u najpametnijim i sposobni se nositi sa svime bez uputa, odlučio sam odmah povezati kontroler na Mac i djelovati u okolnostima bez gnjavitih komada. Povezan i ... ništa se nije dogodilo. Upute su za gaćice? Bez prijatelja. Ipak, oni su bolje čitati, koji štedi i vrijeme i živce.

Kako napraviti sprijateljuje pokretanje s računalom

Ali sve što je trebalo učiniti je otići na službeno projektno mjesto. Za to, kreator dodatne opreme snažno se gura čim otvorite kutiju i dohvatite gadget prema van. Na zaštitnoj naljepnici odozgo, to je jasno napisano, kažu: " Aktivirajte na LeapMotion.com/setup."" Nakon donošenja veze, primio sam ponudu za preuzimanje odgovarajućih upravljačkih programa:

Usput, paket je bio učitan vrlo težak, već na 80 MB, a nakon instalacije je potrebno više od 200 MB:

Pa, instalirao sam upravljačke programe, softver i malu kutiju nakon povezivanja s računalom odmah je došlo do života: LED statusa zapalio se zelenim svjetlom, a crvene točkice pojavile su se na vrhu - ovo je IR Emiter:

Zaslon je također radio na ekranu, a ne samo mi se ponudio da povežem gadget i organizirate je u skladu s tim, već i čistite gornju ploču skok od otiska prsta tako da je uređaj radio bolje. Ne znam gdje je našao otiske tamo, imam uređaj vrlo pažljivo, gornja ploča nije dotaknula, ali još uvijek je protrljala, zatvara nekoliko prašnjavih:

Pa, sve, sada sam dotaknuo magiju! Ne, još uvijek morate pokrenuti priloženu aplikaciju zračnog prostora i registrirati se u lokalnoj trgovini aplikacija:

Registrirao sam se, pokrenuo zračni prostor i konačno možete dotaknuti budućnost. Iako, ne žurite. Prve, demonstracijske prijave su učitane, a pristojne su - barem desetke megabajta, ali obično daleko od stotinu.

Pa, dok je učitava da prolazi kroz postavke dodatne opreme, oni su malo.

Na kartici S. osnovne postavke Možete riješiti ili zabraniti prijenos informacija iz senzora s web aplikacijama i programima koji rade u pozadini, kao i konfiguriranje visine na koju se provodi praćenje:

Na kartici Praćenje Prioritet senzora je konfiguriran (brzina, točnost ili uravnoteženi rad) i shemu njezina operacije (treba li pratiti da li je orijentacija ruku automatski orijentacija u zraku i jesu li suvišne predmete u skok motornoj zoni, poput ramena i glave).

Pa, sve demo programe učitavaju, vrijeme je da doživite gadget u akciji.

Pregled videozapisa

Rukama

Kada je došao do skok u razigranom obliku došao je urednik, onda neke posebne emocije nisu uzrokovale. Predugo smo čekali i nekako izgorjeli, vjerojatno. Čak iu procesu postavljanja uređaja, nisam osobno doživio osobito jake emocije.

Ali bilo je vrijedno pokrenuti prvu aplikaciju i vidjeti uređaj u akciji, kada ne dodiruje tipkovnicu, miševe ili ekrane, stvarate neke nevjerojatne stvari, čini se da rotira molekulu DNA, baš kao iu "posebnom mišljenju" ili raspršivanje Muhe ribe kretanje dlana, zatim divlji užitak i osjećaj da se svijet mijenja izravno na oči.

Kontroler stvarno vrlo sigurno Prati dlanove, prste i njihovo kretanje. Istina, potrebno je naviknuti se na to. Prvo, ne biste trebali učiniti previše oštre pokrete. Izvedba iz pokreta skoka je visoka, ali nemojte čekati čuda. Osim toga, s oštrim pokretima, ruke često padaju iz zone senzora.

Druga važna točka je definiranje najpogodnije visine praćenja, koja je konfigurirana u opcijama, spomenula sam gore. Tijekom testiranja, najpogodnije je bila standardna vrijednost od 20 cm, ali u najvećoj mjeri u interakciji s držanjem gadgeta. Ako možete sjediti, onda je potrebno malo smanjiti visinu ili koristiti automatsko praćenje.

O aplikacijeZa skok pokret, već je mnogo njih, a oboje plaćene (cijene na Apple App Store razini) i besplatno. U biti, tvrtka za korisnike uređaja otvorila je vlastitu trgovinu aplikacija, koja je već uspješno ovladala mnogim programerima treće strane. Srećom, SDK je čuo više od godinu dana.

Postoje igre, postoje samo smiješne programe koji pokazuju mogućnosti kontrolera, postoje aplikacije za stvaranje glazbe, učenja itd. Prisutnosti za Windows i OS X.

Općenito, uglavnom je to igračka, ali igračka je nevjerojatna, uzrokujući oluju emocija u tušem. Radovao sam se kao dijete kada je virtualnost reagirala u moje pokrete u ovoj stvarnosti - kada su se na vodi pojavili Držali ste u rukama istinitog reketa ... sve ovo je vrlo zategnuto.

I trebali biste se pokušati igrati s korištenjem skoka pokreta djetetu, a dugo ne povlačite s računala. Štoviše, djeca ne moraju ništa objasniti, svi su zgrabili u letu, a sada 3-godišnja klinac uže u užema i hrani omnom lilipovima.

LEAP kretanje ima veliku budućnost. Pustite to radije igračku nego ozbiljan alat ili zamjenu mišem i touchpad, ali stvarno radi. Štoviše, uređaj je podržao programere i to je najvažnije. Uostalom, bez najhladnijeg gadgeta bit će samo gomila mrtvog "željeza, plastike i silicija". Programi su duša uređaja, a pokret skok je širok, ljubazan i obećavajući.

Cijena pitanja - oko 5.000 rubalja.

web stranica Sjećam se kako sam prošle godine vidio skok pokret demonstracijski video i nije vjerovao da to nije prototip, već potpuno popunjen proizvod, oslobađanje od kojih će se održati šest mjeseci. Nekako je previše fantastičan izgledao je sliku koju je pokazao developer, gurajući misli o filmu "Posebno mišljenje". Ali čudo se nije dogodilo, i na početku je datum objavljivanja prebačen na četiri ...