SteamVR并将光线绘制到鼠标

时间:2017-03-03 00:22:12

标签: c# unity3d virtual-reality htc-vive

我正在尝试从我的主摄像头(这是steamvr的"Camera (eye)")到我的鼠标点在空间中绘制一个光线投射,这样我就可以在我的3d环境中选择对象。问题是我的raycast不是指向我的鼠标所在的位置,并且大概可以45度以上。我会发布屏幕截图,这样你就可以看到我的鼠标位置和raycast位置。任何人都有这个问题或解决方案吗?我很肯定它是steamvr特定问题。

Link to similar question (not answered yet)

这是我的代码:

Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHit hit;
Debug.DrawRay(ray.origin, ray.direction * 100, Color.red);
if (Physics.Raycast(ray, out hit))
{
   Debug.Log("Mouse is over: " + hit.collider.name);
}

屏幕截图(鼠标位于十字线上方中间位置)enter image description here enter image description here

1 个答案:

答案 0 :(得分:0)

不确定是什么问题(提供更多详细信息),但您的代码片段对我来说运行正常。(我测试它没有vive,但使用蒸汽摄像机预制件)。这是我的场景的快照

enter image description here

请记住,您必须先在游戏视图中点击,才能查看正确的光线方向。