我正在尝试调整现有的 Three.js 项目以与 WebVR 配合使用。我已经取得了不错的进展——我可以在 VR 中环视场景,但我无法将相机位置从它生成的初始位置移开(看起来接近
0,0,0
,看起来就像在那里)是预定义的 userHeight
会被考虑在内)
一旦我调用
renderer.vr.setDevice( vrDisplay )
,似乎就创建了一个新相机,并且我的场景正在使用的现有相机不再使用。我想继续使用该相机,或者至少继承它的大部分属性。
我注意到有一个
renderer.vr.getCamera()
方法(链接到源代码),但我还没有找到任何如何使用它的示例或文档(或者我是否应该使用它)。奇怪的是,这个方法接受 camera
作为参数,这对于 getter
来说有点不直观。看看代码,这个函数似乎应该被称为setCamera
,这让我有点困惑。我尝试调用该函数并传入我现有的 camera
但没有效果。
如有任何帮助,我们将不胜感激。我正在使用 Three.js R91 在最新版本的 Android/Chrome 上使用 Google Daydream View
swirlybuns,Mugen87 解决方案只要将用户添加到场景即可工作
var user = new THREE.Group();
user.position.set(0,0,0);
camera = new THREE.PerspectiveCamera( 70, window.innerWidth / window.innerHeight, 0.1, 1000 );
camera.position.y = 1.6;
user.add( camera );
scene.add(user);
以及渲染循环中
user.position.setZ(camera_z_pos);
camera_z_pos -= current_velocity;
测试于 三.js v102 铬移动 v75
请问问题解决了吗?我最近也遇到这个问题