实现抓取功能:第一,手柄上要添加VRTK_InteractGrab脚本;第二,被抓取的物体上要添加VRTK_InteractableObject脚本并且isGrabbable 标志位设置为真,而且该物体满足被触碰的条件。以上都满足即可抓取物体。

下面为详细步骤:

VRTK_InteractGrab为抓取交互对象脚本,要添加到手柄上。当把该脚本添加到手柄上后,会自动添加VRTK_InteractTouch等脚本到手柄。如图:

被抓取的物体要有碰撞体,而且添加VRTK_InteractableObject脚本,如图

这样就实现了抓取该物体功能。


下面进行原理详细解析:

VRTK_InteractGrab:抓取交互对象

交互抓取脚本被 添加到[CameraRig] 预制里的控制器对象上,并且需要添加VRTK_ControllerEvents脚本用来监听抓取和释放交互游戏对象的控制器按钮事件。它监听 AliasGrabOn和AliasGrabOff 事件来确定对象合适应该被抓取和释放。

注意:

1、控制器对象也需要添加VRTK_InteractTouch脚本用来确定何时一个可交互对象被触摸到。只有有效的被触摸对象才能被抓取。

2、如果控制器触碰到一个包含VRTK_InteractableObject脚本并且isGrabbable 标志位设置为真的游戏对象,该对象就可以被抓取。

3、如果有效可交互对象是可抓取的,按下控制器上所设置的抓取按钮(默认是Trigger按钮)将抓取和对齐对象到控制器上,并且直到抓取按钮松开才会被释放。

4、当控制器抓取按钮松开时,如果可交互对象是可抓取的,它将会被按一定速率沿着控制器松开时的方向进行推动,这就模拟了对象投掷

5、可交互对象需要碰撞体用来激活触发和一个刚体用来拾取它们并在游戏世界中四处移动它们。

Controller Attach Point:控制器模型上用来吸附抓取的对象的刚体点(默认为tip)

Hide Controller On Grab: 当有效抓取发生时隐藏控制器模型。

Hide Controller Delay:在抓取时隐藏控制器之前的等待时间秒数。

Grab Precognition:预先抓取: 在抓取按钮按下时和控制器正在抓取某个东西时之间时间量。例如,如果一个对象下落过快,因为人的反应时间可能很难及时按下抓取按钮来抓住对象。这个值越高 意味着抓取键可以越提前在控制器碰到对象以及碰撞发生前按下,如果抓取键仍然被按下(如果抓取对象需要持续按键抓取的话),则抓取动作就会成功。

Throw Multiplier:投掷乘数:用来乘以对象被扔出时速度的量。在放大 CameraRig 来模拟能够把物体扔的更远时是很有用的。

Create Rigid Body When Not Touching:如果勾选,当抓取按钮按下时,如果控制器没有碰到一个可交互的对象,那么添加到控制器上的刚体就允许控制器去推动周围其他的刚体对象。

发出事件如下:

· ControllerGrabInteractableObject: 当有效对象被抓取时发出

· ControllerUngrabInteractableObject: 当有效对象从抓取到放开时发出

VRTK抓取功能及VRTK_InteractGrab解析相关推荐

  1. 利用站点抓取功能批量下载壁纸

    IDM是一款简单.易上手的下载器,,使用IDM下载器可以进行文档.图片.网页等等类型文件的下载,十分方便快捷,可以极大地便利我们的生活与工作.电脑壁纸可以美化桌面,优化我们的使用体验.那么,当你有多张 ...

  2. 【实战+源码】基于RGB-D(深度视觉)的具有机械臂抓取功能的自主规划移动服务机器人的设计与实现(一)——准备工作

    目录 一,实物or仿真 1,实物或仿真的利弊 2,从哪些角度去考虑是选择实物还是仿真 二,环境准备 1,首推ROS 2,其他环境 三,理论学习 四,实物搭建 一,实物or仿真 我想这个问题是在开发之前 ...

  3. 【RPA入门教程】UiBot数据抓取功能使用教学(二)

    数据抓取功能使用说明 点击 UiBot 编辑器工具栏的[数据抓取]按钮,打开数据抓取工具 数据抓取工具需要先选取一个目标,点击选择目标按钮即可. 这个目标就是要采集的数据字段,如果要采集商品名,则先选 ...

  4. 抓取网页数据并解析Android

    抓取网页数据并解析 标签: 网页抓取jsoupAndroid 2016-03-02 13:54 1262人阅读 评论(1) 收藏 举报  分类: Android开发(原创)(7)  版权声明:本文为博 ...

  5. 【RPA入门教程】数据抓取功能使用教学(一)

    UiBot 0.7 版新增加了[数据抓取]功能,这项功能可以方便获取网页中的相似元素,将相似元素的数据采集到数组中,比如各种电商网站(淘宝.京东.拼多多等)的商品分类.商品列表信息(商品名.价格等), ...

  6. Python案例学习:抓取网页表格数据解析并写入Excel

    三年多没写博客了,原因是因为我转行了,经历了很长的低谷,那段时间从不看博客,今天打开来看,回复了一些评论,很抱歉,有些网友的评论没有及时回复.最近开始想写代码了~ 最近看基金股票,想抓取一些行业当天的 ...

  7. HTC VIVE丨12. VRTK抓取机制——(VR交互机制2-Grab)

    设置物体被抓取的位置及朝向 Grab Attach Mechanic Script:抓取机制的设置 Precision Grap:是否采用精确抓取.如果不勾选,抓取物体和手柄保持一致.选取后,抓取时会 ...

  8. python爬取论坛付费内容_Python爬虫抓取论坛关键字过程解析

    前言: 之前学习了用python爬虫的基本知识,现在计划用爬虫去做一些实际的数据统计功能.由于前段时间演员的诞生带火了几个年轻的实力派演员,想用爬虫程序搜索某论坛中对于某些演员的讨论热度,并按照日期统 ...

  9. VRTK抓取触碰交互

    VR的交互插件一般都用VRTK,因为比较方便和便捷(依据个人喜好). 如果你想判断手柄触碰或者抓取一个物体然后触发一系列事件的话 首准备工作 ,先往这个物体上绑好一些组件: collider碰撞组件  ...

最新文章

  1. sql 找到最近的值_数据分析——SQL查询(常用函数)
  2. mysql connection是什么_记一次MySQL出现too many connection
  3. RabbitMQ实例教程:主题交换机
  4. 【LeetCode】剑指 Offer 07. 重建二叉树
  5. opencv2.4.9中HoughlinesP源码中的疑问解析!
  6. QSerialPort线程内接收异常
  7. Debian+Django+uWsgi+nginx+mysql+celery
  8. 2017中国“互联网+”数字经济指数 | 腾讯研究院
  9. 人工智能动物识别系统C语言代码,人工智能作业动物识别系统.doc
  10. js将 0,1,2,3...转成一,二,三....(数字转换大写)
  11. 度数换算_度数换算计算器
  12. oracle sql格式化 补零,sql语句格式化数字(前面补0)、替换字符串
  13. MATLAB | 好看的相关系数矩阵图绘制
  14. 计算机语言的拼音,语言拼音_语言的拼音和组词_怎么写语言拼音
  15. USACO-Section 3.4 Raucous Rockers (DP)
  16. POI设置导出的EXCEL锁定指定的单元格
  17. 功能强大、多合一,Java性能调优VisualVM多合一工具
  18. 『译』RGB-D Salient Object Detection, A Review『译』
  19. 设计模式(四) 观察者模式
  20. 小白怎样快速制作gif动图?图片在线合成gif该如何做?

热门文章

  1. 文本溢出显示省略号时展示‘查看更多’按钮
  2. CRM系统的整体功能设计
  3. 」张顺在灯影下张时 水浒传
  4. 聚焦IoT安全:对多厂商智能汽车产品的安全性探究
  5. 【傅老师DarkSouls第一季】04
  6. 阿里云成为全球唯一完成德国C5云安全基础附加标准审计云服务商 数据安全获“最严谨”标准认可...
  7. 七大产业向民间投资放开
  8. Java中八种基本数据类型占用字节空间总结
  9. 别人家的公司的 1024 程序员节
  10. slot的作用与使用