Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Leap Motionを使ったハンドジェスチャー / yusuke-smcn3-present...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
yusuke ota
June 15, 2019
Programming
590
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Leap Motionを使ったハンドジェスチャー / yusuke-smcn3-presentation
Leap Motionを使ったハンドジェスチャーを行いたかった話。
yusuke ota
June 15, 2019
More Decks by yusuke ota
See All by yusuke ota
XR Interaction Toolkitではまった話 / yusuke-xrshimane5-presentation
yusukeota
0
5.1k
Rustざっくり説明 / yusuke-east_shimane_rs0-presentation
yusukeota
0
91
Other Decks in Programming
See All in Programming
はてなアカウント基盤 State of the Union
cockscomb
1
1.2k
Performance Engineering for Everyone
elenatanasoiu
0
250
symfony/aiとlaravel/boost
77web
0
110
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
620
技術的負債解消で開発者の未来を開く- AIの力でコード刷新
kmd2kmd
0
130
自作OSでスライド発表する
uyuki234
1
3.5k
これからAgentCoreを触る方へトレンドはGatewayです
har1101
6
450
OS アップデート対応の取り組み方がもっと共有されてほしい
andpad
0
110
ランチタイムLT会3周年!ランチタイムLT会を3年間続けられたお話
y0hgi
1
120
Language Server 使ってる? 〜VSCode と Zed の場合〜 / Are you using a Language Server? ~For VS Code and Zed~
handlename
0
820
Spec Driven Development | AI Summit Lisbon
danielsogl
PRO
0
230
SLOをサービス品質の共通言語にするために 取り組んできたこと
wakana0222
0
220
Featured
See All Featured
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
230
The Curious Case for Waylosing
cassininazir
1
420
Bash Introduction
62gerente
615
220k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Technical Leadership for Architectural Decision Making
baasie
3
430
Context Engineering - Making Every Token Count
addyosmani
9
1k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.6k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.8k
Designing for humans not robots
tammielis
254
26k
Making Projects Easy
brettharned
120
6.7k
Transcript
Leap Motionを使った ハンドジェスチャー Ota Yusuke(@yusuke ota) 参考文献 Leap Motion Unity
SDK v3.2 Beta documentation https://developer-archive.leapmotion.com/documentation/v2/unity/unity/Unity_DetectionUtilities.html
環境 OS: Windows10 1809 Unity: 2019.1.4f1 Orion:4.4.0 HMD: Vive
このLT中の写真は ViveにLeap Motionを つけた状態で 撮影しています
Leap Motion SDKでは 条件を与えて、 オリジナル ハンドジェスチャー を定義できます(形状のみ)
使える条件は6つ DetectorLogicGate:”AND” or “OR” ExtendedFingerDetector:指の開閉 FingerDirectionDetector:指の向き PalmDirectionDetector:掌の向き PinchDetector:つまんでいるか ProximityDetector:距離
Detector すべてのDetectorの継承元 On Activate(): 判定が真の時実行する処理 (複数選択可) On Deactivate(): 判定が真→偽に変わった時 実行する処理
(複数選択可)
DetectorLogicGate Detector同士をAndやOrで結合する Detectors: 結合するDetectorの数と対象を選択 Add All Sibling (以下略): このオブジェクトについている すべてのDetectorを対象に設定
Detectorsの設定を無効 Gate Type: AndかOrで論理演算の種類を選択 Negate: 判定結果の否定を返す
ExtendedFingerDitector 指の開閉を判定する 周期: 判定を行う周期 Hand Module: 判定を行う手のモデル Finger States: 指の状態を、開、閉、どちらかの
3種類で設定 Min and Max Finger Counts: 開いている状態の指の最大数、最小数 を設定
FingerDirectionDetector 特定の指の向きを判定する Finger Name: 判定する指の指定 Pointing Type: 対象とする座標系を選択 Pointing Direction:
座標系をに対する向きを設定 On Angle: 判定が真になる時の角度 Off Angle: 判定が真→偽になる時の角度
PalmDirectionDetector 手のひらの向きの判定 FingerDirectionDetectorの手のひら版
PinchDetector 親指と小指の距離を判定 Controls Transform: 判定が真のときに、 オブジェクトを動かすかどうか Activate Distance: 判定が真になる時の距離 Deactivate
Distance: 判定が真→偽になる時の距離
ProximityDetector 物体の距離を判定する On Proximity: 判定が真のオブジェクトを渡す対象 Tag Name: タグで一括追加 Use Layers
Not List: Unityのレイヤーで一括設定
case1: サムズアップ判定 Leap Motionでサムズアップを判定する 際に必要な条件は ・2つの条件を同時に満たすこと ・指の開閉 ・親指の向き
使える条件は6つ DetectorLogicGate:”AND” or “OR” ExtendedFingerDetector:指の開閉 FingerDirectionDetector:指の向き PalmDirectionDetector:掌の向き PinchDetector:つまんでいるか ProximityDetector:距離
サムズアップ判定 DetectorLogicGate ExtendedFingerDetector FingerDirectionDetector を追加 On Activate()に有効時 On Deactivate()に無効時 の動作を追加
Case2: 物体保持判定 Unityで物をつかみ上げる動作をする には ・握りこんだ判定 ・接触しているオブジェクトの取得 ・物をハンドモジュールの子に変更 処理が多くて実装がめんどくさい
Leap Motion Interaction Engine を 使う Leap_Motion_Interaction_Engine_1.2. 0.unitypackageをインポートして、 プレハブInteraction Managerを使用
InteractionBehaviour で保持判定追加 オブジェクトにInteractionBehaviourを追加するだ けで判定可能に 保持時の移動をオンにすればオブジェクトの持ち運 びも可能
詳しい情報が欲しい方は Leap Motion Detectionで検索 Leap Motionのアーカイブ(V3.2) https://developer-archive.leapmotion.com/documentation/v2/unity/unity/Unity_DetectionUtilities.html Leap Motion Unity
Modules 4.4 https://leapmotion.github.io/UnityModules/class_leap_1_1_unity_1_1_detector.html を読みましょう Slackで気軽に聞いてください
ところで 普通の ジェスチャーは?
Leap Motion SDK Gesture Support V2:JS,C#,C++ etc V3:JS,C++ V4:Null(2018.6~)
ご清聴 ありがとうございました