LeapMotion联动Unity实现体感识别

发布于:2022-12-24 ⋅ 阅读:(227) ⋅ 点赞:(0)

首先安装前置

在这个网址:https://developer.leapmotion.com/ (直连会比较慢)下载unity 插件

Ultraleap for Developers 这里下载驱动程序

安装完驱动程序后在右下角出现的新图标中打开这个驱动,摄像头已经能识别到骨骼(没有骨骼的话旋转一下摄像头)

把插件导入Unity中,打开实例场景可以看下整个SDK是如何运作的

这里简单介绍下关键方法

一,从无到有,让手动起来

两个关键脚本:Leap Service Provider(联动Leap Motion的脚本)

Capsule Hand(生成手的结构)

 这个是摄像头模式,如果你手的动作和预想不匹配(如手背手心反了)调整这个试试

创建一个空物体给绑上Capsule Hand会自动生成一个手模型,可以直接控制

二,与手联动

using Leap;
using Leap.Unity;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class NewBehaviourScript : MonoBehaviour
{
    public LeapServiceProvider leap;//从驱动获取数据
    public Frame frame;//框架

    public GameObject go;


    [System.Obsolete]
    private void Update()
    {
        frame = leap.CurrentFrame;//将驱动中的数据传给框架
        //Debug.Log("pitch"+frame.Hands[0].Direction.Pitch);//从框架中获取手的数据
        //Debug.Log("yaw" + frame.Hands[0].Direction.Yaw);//从框架中获取手的数据
        Debug.Log("roll" + frame.Hands[0].Direction);//从框架中获取手的数据
        go.transform.position =frame.Hands[0].PalmPosition.ToVector3();//将手的坐标转为unity物体坐标并赋值
    }
}

更多互动方法可以在官方API查看

LeapHand — Leap Motion C++ SDK v3.2 documentation

参考文章:

Unity LeapMotion SDK 基础讲解_Maddie_Mo的博客-CSDN博客_leap motion sdk

leapmotion使用之一-如何用leapmotion代替鼠标简单操作_风云变色z的博客-CSDN博客_leapmotion
leapmotion c语言开发,互动开发-(四)LeapMotion-Unity主要类_凯瑟琳大王的博客-CSDN博客


网站公告

今日签到

点亮在社区的每一天
去签到