Javascript 以编程方式更改webvr摄影机视图

Javascript 以编程方式更改webvr摄影机视图,javascript,aframe,webvr,Javascript,Aframe,Webvr,我希望以编程方式移动webvr场景中视图的位置。为此,我使用position.add方法 以下是我如何以编程方式移动相机: <a-entity position="33 0 -33" rotation="0 180 0" look-controls id="camera" camera="userHeight: 1.6" listener></a-entity> 这在正常模式下工作,但在硬纸板模式下,相机不移动。如何以编程方式在纸板视图模式下移动相机?

我希望以编程方式移动webvr场景中视图的位置。为此,我使用position.add方法

以下是我如何以编程方式移动相机:

 <a-entity position="33 0 -33" rotation="0 180 0" look-controls id="camera" 
       camera="userHeight: 1.6" listener></a-entity>

这在正常模式下工作,但在硬纸板模式下,相机不移动。如何以编程方式在纸板视图模式下移动相机?

据我所知,一旦切换到“VR模式”,您可以使用“VR模式”之外的其他相机

我认为您应该收听VR进入/退出事件,并更改相机参考:

this.el.sceneEl.addEventListener('enter-vr',() => {
     obj3d = document.querySelector("#camera").object3D;
}
this.el.sceneEl.addEventListener('exit-vr',() => {
     obj3d = document.querySelector("#camera").object3D;
}

请重新思考,如果这是必要的,当用户移动他的头,相机变得疯狂,它会变得非常眩晕,非常快

A-frame的迭戈·马科斯(Diego Marcos)在他的著作中经常推荐视觉指示,而不是这些选项


如果上述操作不起作用,请尝试抓取摄影机实体,如果其object3D:

var obj3d = document.querySelector("#camera");
并使用setAttribute()方法移动它


直接旋转包装器实体和相机。我实现了你的建议。检测到进入/退出vr事件,但在全视图中仍不起作用。有没有办法让这一切顺利进行?
var obj3d = document.querySelector("#camera");
obj3d.setAttribute("position", {x: _x, y: _y, z: _z});