如何解决Unity可移动菜单界面碰撞检测问题
我认为这很容易,但我还没有找到解决方案。我在 Unity 中有一个用于 VR 的 3D 环境。我在 Worldspace 中有一个 Canvas,您可以像平板电脑一样抓取和移动它。为了能够触摸画布上的按钮,我在控制器的指尖添加了一个球体作为带有球体碰撞器的检测器。对于画布上的按钮,我添加了rigidboys 和Boxcollider。使用 onCollisionEnter 事件,我会处理按钮和手指是否发生碰撞并执行 onclick.Invoke() 函数。
它正在工作,问题是如果我触摸它们开始移动并在环境中漂浮的按钮。如果我冻结他们的位置,如果我拖动整个菜单,他们将不会被移动。我该如何解决这个问题?
将 Unity 2019.4.19f1 与 Oculus OVR 插件配合使用。
解决方法
好的,我按照 JustARandomWibuuuu 的建议将它们设置为运动学的想法解决了这个问题。如果有人可能遇到同样的问题。
我已将两者都设置为运动学,并且在项目设置 → 物理 → 联系人配对模式中,我必须启用所有联系人。
,您添加了 rigidbody
,因此它将是一个物理按钮,它会受到重力、力、拖动等的影响,因此它是浮动的,因为它是 3D 的。你可以用静态刚体来做
只需点击 true
Rigidbody.isKineMatic
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。