执行DeviceErientationControls仍可使用TRIST.JS R104



我在3.js上在移动设备上创建WebVR,并且我使用deviceerientationControls,但它不起作用,DeviceErientationControls已最后修改了,我不知道它仍然可以使用最新版本三人?可以告诉我它仍然有效吗?

演示:https://demoviss.herokuapp.com/

代码:

sceneSetup = () => {
   this.scene = new THREE.Scene();
   this.camera = new THREE.PerspectiveCamera(
     80,
     window.innerWidth / window.innerHeight,
     0.1,
     1000
   );
   this.raycaster = new THREE.Raycaster();
   this.raycaster.setFromCamera({ x: 0, y: 0 }, this.camera);
   this.camera.position.y = 1.6;
   this.camera.position.x = 0;
   this.camera.position.z = -0.001;
   this.controls = new DeviceOrientationControls(this.camera);
   this.renderer = new THREE.WebGLRenderer({ antialias: true });
   this.renderer.setPixelRatio(window.devicePixelRatio);
   this.renderer.vr.enabled = true;
   this.renderer.setSize(window.innerWidth, window.innerHeight);
   this.mount.appendChild(this.renderer.domElement);
   document.body.appendChild(WEBVR.createButton(this.renderer));
   this.renderer.setAnimationLoop(() => {
      this.renderer.render(this.scene, this.camera);
   });
 };

在调试您的应用程序后,addCustomSceneObjects()中的以下行似乎导致运行时错误:

this.scene.add(this.controls);

THREE.DeviceOrientationControls不是从 Object3D派生的,因此在场景图中添加一个实例无效。创建控件后,您只需在动画循环中与官方示例类似的情况下调用THREE.DeviceOrientationControls.update()即可。这是您必须添加到animate()函数的东西。

three.js R104

最新更新