如何让凝视光线投射通过图像,还可以激活凝视事件

时间:2018-05-04 14:25:01

标签: unity3d c#-4.0 raycasting

我有两个画布。一个嵌套在另一个中。他们在看时都表达了一种行为。在查看外部画布时,它可以正常工作,但是当我查看内部画布时,外部画布的行为会停止。

我将它固定在我的光线投影上,而不是通过内部画布。

有人可以帮助我或将我链接到一个已知的解决方案吗?

我尝试了图层,但我不太了解它们。我希望有一个更容易的解决方案。

具体而言。当焦点丢失时外部画布关闭,所以我试着保持对象的焦点。当我进入内部画布时,它不会将其注册为外部画布并且它开始关闭。

我专注于HololensToolkit。它处理大多数凝视事件,但似乎没有选择获得多个光线投射。

1 个答案:

答案 0 :(得分:2)

使用RaycastAll,并使用返回对象数组。 例如:

RaycastHit[] hits;
hits = Physics.RaycastAll(transform.position, transform.forward, 100.0F);

foreach (RaycastHit hit in hits)
{
    if (hit.gameObject.tag == "menuobj")
       //do something
}