龙武工会网站怎么做,网站建设最基础的是什么意思,网页版梦幻西游全新联动,wordpress uncode文章目录 #x1f4d5;教程说明#x1f4d5;设置刚体和碰撞体#x1f4d5;给物体添加 Physics Grabbable 脚本#x1f4d5;给手部添加 Hand Velocity Calculator 物体 此教程相关的详细教案#xff0c;文档#xff0c;思维导图和工程文件会放入
Seed XR 社区。这是一个高… 文章目录 教程说明设置刚体和碰撞体给物体添加 Physics Grabbable 脚本给手部添加 Hand Velocity Calculator 物体 此教程相关的详细教案文档思维导图和工程文件会放入
Seed XR 社区。这是一个高质量知识星球 XR 社区博主目前在内担任 XR 开发的讲师。此外该社区提供教程答疑、及时交流、进阶教程、外包、行业动态等服务。 知识星球链接Seed XR 高级社区 教程说明
这篇教程将会介绍如何在能够抓取物体的基础上实现扔物体的物理效果。
配置一个基本的玩家物体可以参考前几期教程https://blog.csdn.net/qq_46044366/article/details/134097455
实现抓取物体的效果可以参考上一篇教程https://blog.csdn.net/qq_46044366/article/details/134488224 这篇教程将基于上一篇教程的配置来讲解因为实现扔物体的前提是实现物体的抓取。
系列教程专栏https://blog.csdn.net/qq_46044366/category_12118293.html
配套的视频链接 https://www.bilibili.com/video/BV12j411L7YQ
电脑操作系统Windows 11
使用的 VR 设备Meta Quest 3Quest 系列都适用
使用的 Unity 版本2021.3.5 LTS (这里推荐使用 2021 及以上的 LTS 版本)
Meta XR SDK 版本v57
官方文档https://developer.oculus.com/documentation/unity/unity-gs-overview/
实现扔物体的效果 https://developer.oculus.com/documentation/unity/unity-isdk-throw-object/
Interaction SDK 物理组件https://developer.oculus.com/documentation/unity/unity-isdk-using-with-physics/
最终效果 设置刚体和碰撞体
要想实现扔物体的物理效果可抓取物体就需要拥有重力效果并且能和其他物体发生碰撞。我们需要取消勾选碰撞体组件上的 Is Trigger并且勾选刚体组件上的 Use Gravity 给物体添加 Physics Grabbable 脚本
在可抓取物体的身上添加 Physics Grabbable 脚本。 这个脚本会自动引用物体身上的 Rigidbody 和 Grabbable 脚本。如果 Rigidbody 和 Grabbable 在添加 Physics Grabbable 脚本之后被添加需要手动引用。
然后找到物体的 HandGrabInteractable 子物体找到 HandGrabInteractable 脚本将物体身上的 Physics Grabbable 脚本拖到 Optionals 下的 Physics Grabbable 变量上。 Physics Grabbable 脚本能够保证物体在被抓取和释放的时候不会出现奇怪的物理效果。物体被抓取时Physics Grabbable 会将刚体的 Is Kinematic 设为 true。
Unity 的物理系统有这么几个特性
两个物体产生碰撞的条件是两个物体都有碰撞体至少有个物体有刚体。物体加了刚体会受到力的效果。
而 is Kinematic 设为 true 的物体不会对其他刚体的碰撞和力做出反应但依然会对其他刚体产生物理影响比如可以撞击其他刚体或者其他刚体撞击自己其他刚体会被弹开。也就是我撞别人能撞动别人别人撞我我没反应别人可能会被弹开。
然后抓取的物体被释放后Is Kinematic 会恢复成 false。然后会给物体施加一个力让物体掉落时的物理效果看起来正常一点。如果没有添加 Physics Grabbable 脚本在释放物体后物体会非常快速地落下。但是添加了Physics Grabbable 脚本后物体就会以正常的重力效果掉落。
给手部添加 Hand Velocity Calculator 物体
在 Project 窗口的搜索栏搜索 Hand Velocity Calculator将 Hand Velocity Calculator 这个 Prefab 拖到玩家物体的 LeftHand 下 点击 Hand Velocity Calculator 物体找到它的 Hand Pose Input Device 脚本将 LeftHand 拖到 Hand 变量上 然后找到左手的 HandInteractorsLeft 下的 HandGrabInteractor将左手的 Hand Velocity Calculator 物体拖到 HandGrabInteractor 脚本的 Veclocity Calculator 变量上 右手也是同样的道理。 当我们配置好了物体和手部后就能实现 Hand Grab 扔物体的效果。
而 Hand Velocity Calculator 上的 StandardVelocityCalculator 脚本就能模拟物体扔出去后的速度。 最终效果