【Oculus Interaction SDK】(四)使用双手操作物体
前言
前段时间 Oculus 的 SDK 频繁更新,很多已有的教程都不再适用于现在的版本了。本系列文章的主要目的是记录现版本常见功能的实现方法,便于自己后续开发。当然,不排除我文章刚写完 SDK 又变了的可能性,所以如果有人发现文章的内容已经不适用于新版本了,也可以留评论或者私信我,我会持续更新文章内容。
当前适用版本:
- Unity 版本:2021.3.7f1c1
- Oculus Interaction SDK 版本:47.0
文章最近更新日期:2023.02.08
用双手操作物体
依旧是用我们之前制作好的 Cube(Both)来做测试,这次改个名字叫 Two Hand Grab(制作方法见前文)
【Oculus Interaction SDK】(一)设置 VR 相机与控制器 && 实现简单的抓取功能 - 千叶Christa - 博客园 (cnblogs.com)
在复制好的 Cube 上添加 Two Grab Free Transformer
组件,将其赋值给 Grabbable 组件的 Two Grab Transformer
注意:Grabbable 组件的 Transfer On Second Selection
选项不要勾选,否则双手操作可能会没有效果
点击运行试试看
看起来双手的操作可以正常实现了,但是单手抓取物体的功能似乎失效了
这是因为在我们自己创建双手操作器 Two Grab Free Transformer
之后,系统就不会再为我们创建单手操作器 One Grab Free Transformer
了,我们需要手动创建一个单手操作器,并赋值到 Grabbable 组件的 One Grab Transfer
中
这样,单手抓取和双手缩放的功能就同时实现了
此外,双手操作器本身是可以限制物体缩放效果的(图中效果为:最小为物体的 0.05 倍,最大为 0.15 倍,测试用的方块本身的大小为 0.1)
加上限制之后就是这样啦!
参考资料
Two Hand manipulation and Restricted Grab - Oculus Interaction SDK - PART 2 - YouTube