如何在相机的子画布中绘制3D对象

时间:2017-11-08 07:47:00

标签: unity3d raycasting htc-vive

screenshot

嗨,我正在尝试制作HTC Vive应用。我想制作一个画布 - 世界空间,三维物体在一切之上。所以我按照这个答案。 https://answers.unity.com/answers/887498/view.html ..效果很好。

然后我让画布成为相机的一个孩子,这样画布就会随着相机的移动而移动。然后我调整了画布的位置Z,使其位于相机前面。

我遇到的问题是,我想使用控制器在画布上的3d对象上进行光线投射。我已经有了要检测它的脚本。 因此,画布按照上面链接的指示设置为UI层。为了进行射线扫描,我必须将LayerMask作为参数传递给Raycast()函数。

但是,请参阅png文件,我必须估计画布的距离才能被击中。在屏幕截图中,蓝色立方体是画布中的3D对象。紫色线是激光指示器,它只会在有击中时出现。为了出现紫激光,我不得不估计蓝色立方体的位置。如果我直接指向立方体,光线投射不会打。

很抱歉,如果我的问题不清楚。我很难找到合适的术语来解释我的问题。谢谢。

0 个答案:

没有答案