雕刻笔应用开发,3D Systems Openhaptics Unity Plugin插件使用心得

雕刻笔应用开发,3D Systems Openhaptics Unity Plugin插件使用心得

驱动安装:
1、根据设备型号下载对应驱动。
https://3dssupport.microsoftcrmportals.com/knowledgebase/article/KA-01460/en-us
进入官网,下载驱动:
在这里插入图片描述
2、如果是1394接口,安装Phantom_Device_Drivers_5.1.7_Release:

如果是USB接口,安装Touch_Device_Driver:

3、驱动安装完成后,以管理员身份打开PHANToM Configuration:
在这里插入图片描述
点击Add,添加一个新的名字:Default Device,然后应用。
在这里插入图片描述
在这里插入图片描述
导入插件
1、在Unity商店搜索3D Systems Openhaptics Unity Plugin,下载导入工程:
在这里插入图片描述
给笔添加力

运行后把Haptic Plugin 脚本上的Physics Manipulation Enable勾上。(这个选项运行后会自动关闭,要用代码更改)
在这里插入图片描述
按钮按下事件
(国产设备两个按钮相同效果)
hapticDevice.GetComponent().Buttons [buttonID] == 1
在这里插入图片描述

触碰效果
通常,物体只要改成Touchable标签就有触摸阻挡效果了,如果物体加上了刚体,标签是什么都可以触碰和拿起来。但是有一点需要注意:Touchable标签的物体是根据Mesh Filter来触碰的,非Touchable标签的物体是根据碰撞体来触碰的。

遥控笔移动区域:
在HapticDeviceWithGrabber下的HapticDevice,修改其缩放,就可以改变移动区域了
在这里插入图片描述
在这里插入图片描述
Touchable标签的物体由HapticPlugin和HapticGrabber脚本检测到后才起作用的,但检测函数只在运行开始时执行一次。
如果在游戏运行之后添加Touchable标签物体,就需要手动去调用检测函数,分别为:
HapticPlugin里的setupShapes();
HapticGrabber里的disableUnityCollisions();
这两个函数是私有的,要在外面调用,可以自己新建一个公开的方法。
在这里插入图片描述
在这里插入图片描述
2D光标
在HapticDeviceWithGrabber下的HapticDevice中添加HapticMouse脚本
在这里插入图片描述
把光标指针挂在Haptic Mouse脚本上的Cursor处,相机也要挂上:
在这里插入图片描述
在这里插入图片描述
这个HapticMouse脚本默认是按下每帧执行一次,如果想做成只在按下瞬间执行一次,可以改成如下:
在这里插入图片描述
相机旋转
把相机拖到HapticDeviceWithGrabber下,新建一个游戏对象,在其身上挂上CameraRotate脚本。新建两个Image,改名为CameraLeft、CameraRight;放置于屏幕两侧。
在这里插入图片描述
抓取的物体
HapticGrabber脚本下
touching:仅靠刚体和碰撞器抓取的物体
grabbing:标签为Touchable的物体
在这里插入图片描述
HapticPlugin脚本下的(HapticGrabber脚本下的标签触碰物体是从这里获取的)
touching:可触碰物体
在这里插入图片描述
在这里插入图片描述

抓取物体时,晃动厉害,可以把物体标签改为非Touchable:

获取触控笔当前碰到的物体
触控笔圆球碰到那个物体就输出那个物体的名字,不用点击按钮,代码如下:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Now_Obj : MonoBehaviour
{
    public HapticPlugin hapticPlugin;
    private GameObject gameObj;//触控笔当前碰到的物体
    void Start()
    {
        
    }
    void Update()
    {
        gameObj = hapticPlugin.touching;
        if(gameObj != null)
        {
            print ("抓取物:" + gameObj);
        }
    }
}
  • 4
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值