【问题标题】:How do I implement a raycast / laserpointer to Oculus controller?如何为 Oculus 控制器实现光线投射/激光指示器?
【发布时间】:2022-05-07 17:43:19
【问题描述】:

我想在左 Oculus 控制器上实现一个图形光线投射器/激光指示器,这样我就可以与 Unity 中的 UI 按钮进行交互。

我看过很多教程等,但没有任何帮助。

当按下控制器上的按钮时,我希望激光束或激光笔/图形光线投射从 Oculus 控制器中射出。我需要激光束与 Unity 中的 UI 按钮进行交互。

【问题讨论】:

  • developer.oculus.com/blog/easy-controller-selection 下有来自 Oculus 的关于此主题的官方教程,它应该为您提供一个工作示例,即使它来自 Unity 5.X。你已经试过这个了吗?如果是这样,请说明您不明白的地方或哪部分工作不正常。

标签: virtual-reality raycasting oculus


【解决方案1】:

你可以使用普通的光线投射

我建议你这样做:

  1. 在你手上创建一个脚本,并添加一个名为 line renderer 的组件
  2. 在脚本中附加 lineRenderer 组件
  3. 制作简单的光线投射命中
  4. 获取命中对象的位置
  5. 将实际手的第一个位置和第二个设置为命中对象,如下所示:

    lineRenderer.SetPosition(0,transform.position); lineRenderer.SetPosition(1,hitObject.transform.position);

它会从你的手到被击中的物体画一条线,记得改变lineRender参数来画一条漂亮的线

希望对你有帮助

【讨论】:

  • 对不起。它没有。我尝试创建一个凝视指针来点击 UI 按钮,并且我遵循了两个教程,但它们没有用。你知道如何设置凝视指针吗?我什么都试过了。
  • 我现在让Unity显示我面前的凝视指针! :) 耶。唯一的事情是我如何让它与菜单交互,而且只有菜单。环有时会消失,或者“穿过”菜单画布和按钮。
  • 试试这个: 1- 在你的脸上画一个 UI 画布,在 UI 中间总是显示一个小指针,并为 Gaze 指针画一个圆圈,它可以显示/隐藏。 2-UI 的所有元素都需要有一个名为 UIElement 的标签。 3.-从你的脸向前进行光线投射。 4.-检查你用raycast击中的元素,如果他的标签是UIElement,让你的Gaze指针圈充电
  • 画布在VR中出现在我面前,凝视圈在中间。据我所知,元素应该是 UIElements。光线投射器在我的播放器控制器上,所以它应该从那里继续前进,对吗? :) 可以在这里发送个人信息吗?这会更容易。或附有图片的电子邮件:)
【解决方案2】:

我创建了一个使用统一事件系统的项目。它是一个激光指示器,您可以与 Unity 的 UI 和场景中的 3d 对象进行交互。如果你想看看这里的链接:https://github.com/balataca/oculus-laser-pointer

【讨论】:

    猜你喜欢
    • 2021-08-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多