我想用camera.getWorldDirection()和获取头戴式显示器的指示。我可以用以前的webVR API做到这一点。当我从THREE使用新的HelioWebXRPolyfill.js时,我无法接收当前位置。
发布于 2020-01-25 19:54:44
根据WebXR设备应用编程接口,这应该使用XRViewerPose object来完成。
此功能仅在使用HTTPS时有效。
发布于 2020-01-11 02:20:18
似乎调用renderer.xr.getCamera()并没有完全复制camera.getWorldDirection()期望找到的各种camera成员属性。我不确定这个问题是从哪里产生的(可能是polyfill?),但是你可以通过自己计算方向来解决这个问题:
let xrCamera = this.renderer.xr.getCamera(sceneCamera)
let e = xrCamera.matrixWorld.elements
let direction = new THREE.Vector3(-e[8], -e[9], -e[10]).normalize()发布于 2020-01-21 03:41:39
我想出了一个简单的解决办法。只需将一个长方体设置为相机的子对象,并使用相机长方体来代替相机。
camera.add( camerabox );这不起作用:
var direction = new THREE.Vector3();
camera.getWorldDirection( direction );这是可行的:
var direction = new THREE.Vector3();
camerabox.getWorldDirection( direction );https://stackoverflow.com/questions/59554505
复制相似问题