(Demo source here if you happen to have a Quest and an Android development environment.) https://github.com/mcclure/lovr-oculus-mobile/tree/lovr-oculus-mobile-hand …
-
-
Prikaži ovu nit
-
-
The numbers on the right hand side are the parameters the script uses in the gesture recognition: The first five are the curl of fingers 1-5 and the "fingergun" number is a measurement of "how parallel" the index and thumb are.
Prikaži ovu nit -
To go into "fingergun" state 2 must go red (low curl), 3, 4 and 5 must go pink (high curl), and "fungergun" has to go into pink state (index and thumb are highly perpendicular). So when I curl my fingers one by one you can see each line of debug printout light up one by one…
Prikaži ovu nit -
*adjusting glasses* it is theoretically possiblehttps://twitter.com/flangy/status/1214642518857408512 …
Prikaži ovu nit -
-
1. The hand tracking on Quest works a lot better when it's looking at the hand "dead on" than "from the side"— that is it's more accurate if you fingergun to the side, but tends to glitch if you aim dead away from yourself. (This is similar to problems I've seen on the hololens.)
Prikaži ovu nit -
At first I thought the "pinch to click" gesture in the Quest menus was weird, but now it makes sense— it's what this particular type of tech recognizes best. If I revise the fingerguns demo I'll probably have it just fake sticking yr index finger out whenever you give a thumbs up
Prikaži ovu nit -
2. Writing out code for gesture rec is sort of a pain! It's easy enough to write a loop to add curls, or something, but then you go "maybe it should be averaged?" or "oh, it should hold for 3 frames" and suddenly you're rewriting the whole thing to make a small conceptual change.
Prikaži ovu nit -
I think long term I'm going to try to write some kind of "declarative" system, where you describe a gesture by a tree of operators— Gesture{ Foreach{Fingers, Cmp{"<", Curl, 0.4}}} or something, then I can easily express "hold this gesture 0.3 seconds, then switch to this one" etc
Prikaži ovu nit
Kraj razgovora
Novi razgovor -
Čini se da učitavanje traje već neko vrijeme.
Twitter je možda preopterećen ili ima kratkotrajnih poteškoća u radu. Pokušajte ponovno ili potražite dodatne informacije u odjeljku Status Twittera.