Can I use mouse on computer screen in a VR application?
在虚拟现实中,是否可以用鼠标点击电脑屏幕上的东西?
我正在开发一个带有Oculus Rift的Unity虚拟现实应用程序,它应该由两个人使用:一个人使用HMD,另一个人查看计算机屏幕。没有hmd的人应该能够突出显示场景中的一些对象,我能想象的最简单的方法之一就是让这个人点击场景中的对象,然后突出显示它们。
这似乎很简单,因为Unity已经将HMD视图呈现到二维计算机屏幕上。但是,我找到的最简单的方法不适用于ovrcamerarig(是的,我的物体有一个对撞机,我的相机有一个物理射线发射器)。我也尝试过这里描述的光线投射方法。
您需要执行类似于使用光线投射鼠标拾取的操作:http://antongeredelan.net/opengl/ray casting.html
通常,当您想将坐标/矢量从局部空间复制到模型/世界空间时,您可以用坐标/矢量乘以模型/世界空间矩阵。如果你想向后(在你的例子中)乘以逆矩阵。
在过去我个人用它来做非虚拟现实的东西,但是它很容易被适应。我还为自己写了一个快速指南,解释了不同的空间:
三维空间(模型/世界、视图/眼睛、投影)
编辑:由于您已经在使用Unity的内置Ray Caster,下面是一个使用UE4进行我最近制作的基于Raycast的抓取的示例项目。使用这种方法,我还使用了ue4-ray-caster:http://www.katianie.com/sourcecode/unreal/vrgrabbing.zip